Sponsored Content
Top Forums Shell Programming and Scripting unix korn shell leap years problem Post 302464001 by babuda0059 on Tuesday 19th of October 2010 04:48:13 AM
Old 10-19-2010
unix korn shell leap years problem

Write a function called dateToDays that takes three parameters -a month string such as Sep, a day number such as 18, and a year number such as 1962-and return s the number of days from January 1, 1900, to the date.
Notes: I am asking you to account for leap years.

my script is not working i need help
-----------------------------------------
Code:
dateToDays()
{
typeset total
 case $month in 
  "January") 
   month=1
   ;;
  "Febuary")
   month=2
   ;;
  "March")
   month=3
   ;;  
  "April")
   month=4
   ;;
  "May")
   month=5
   ;;
  "June")
   month=6
   ;;
  "July")
   month=7
   ;;
  "August")
   month=8
  ;;
  "September")
   month=9
   ;;
  "October")
   month=10
   ;;
  "November")
   month=11
   ;;
  "December")
  esc
 ((total=(month-1)*30+(day )+(1900-year)))
 return $total
}
# main program
echo enter month 
read month
echo enter day
read day
echo enter year
read year
dateToDays month day year
total = $?
echo the total days are $total


Moderator's Comments:
Mod Comment Homework and coursework questions can only be posted in this forum under special homework rules.

Last edited by Scott; 10-19-2010 at 07:39 AM.. Reason: Homework. Closed.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

problem with set command in korn shell

I have to copy an array to a temp variable and back after doing some functions. I am trying to see if it is possible to do without while loops.My closest try was set -A temp ${THE_ARRAY} # restore array after some actions set -A THE_ARRAY ${temp} The problem with above is that, the new... (1 Reply)
Discussion started by: vijay1985
1 Replies

2. UNIX for Dummies Questions & Answers

problem extracting substring in korn shell

hi all, I have read similiar topics in this board, but i didn' t find the posting which is the same with the problem i face.. I try to extract string from the end. i try to do this: num=abcdefghij num2=${num:-5} echo $num2 #this should print the last 5 characters (fghij) but it doesn;t... (3 Replies)
Discussion started by: nashrul
3 Replies

3. Shell Programming and Scripting

Problem with Korn Shell

My Korn shell script below is giving me the following error: ./test.ksh: 0403-057 syntax error at line 7 : 'then' is not matched. Can anyone provide a quick solution as to why the error is occurring? Thanks. #!/usr/bin/ksh typeset -i RecCount typeset -i RecCount2 RecCount=`db2 -x "select... (23 Replies)
Discussion started by: sasaliasim
23 Replies

4. UNIX for Dummies Questions & Answers

can a korn shell script be written on HP-UNIX?

Is HP UNIX and Korn different flavours of unix? can a korn shell script be written on HP Unix? (4 Replies)
Discussion started by: soujanya_srk
4 Replies

5. Shell Programming and Scripting

korn shell automation problem!

I got the task writting Korn Shell script to automate the tuxedo login so that users neednot have to enter options manually. I have done that using expect tool from the Unix but my manger told me its not secure so you have to do that using Kornshell without using Expect. Here is the way to login to... (0 Replies)
Discussion started by: pareshan
0 Replies

6. Shell Programming and Scripting

AIX Korn shell sed -s problem

In a Korn shell script I have, cat ../header | sed -e 's/flag1/$cnumb/g' > header.txt The header is short {{Company flag1}} But the result in header.txt is {{Company $cnumb}} The value of $cnumb is 120. I am trying to get the value of $cnumb into the header. I have tried /'$cnumb'/g,... (10 Replies)
Discussion started by: jcarrott
10 Replies

7. UNIX for Dummies Questions & Answers

Unix Command to separate this years files and last years?

Hello - I have a folder that contains files from 2003 till 2010. I am trying to figure out a command that would seperate each years file and show me a count? Even if i can find a command that would give me year by year count, thats good enough too. Thanks (8 Replies)
Discussion started by: DallasT
8 Replies

8. Shell Programming and Scripting

korn shell display lenght problem!!! i got stuck on this

Using the KSH, write a shell script called display_by_length, which takes an absolute pathname to a directory and displays all ordinary files in the directory ordered by their length; for each file listed, display the name of the file and its length - nothing else. Extend this script to take an... (1 Reply)
Discussion started by: babuda0059
1 Replies

9. Shell Programming and Scripting

self-learning! my korn shell problem

i am a beginner i m learning shell by myself i have problem writing a korn shell that takes an absolute pathname to directory and display all ordinary files in the directory ordered by their length. i was thinking use grep ls sort and sed. maybe, i m wrong! can someone tell me? (2 Replies)
Discussion started by: babuda0059
2 Replies

10. Shell Programming and Scripting

security for unix korn shell script

hello I am using a korn shell script. I want to make them password protected. Please suggest some ways to do it. thanks in advance for your sufggestion ! (1 Reply)
Discussion started by: urfrnddpk
1 Replies
CALENDAR(3)						   BSD Library Functions Manual 					       CALENDAR(3)

NAME
easterg, easterog, easteroj, gdate, jdate, ndaysg, ndaysj, week, weekday -- Calendar arithmetic for the Christian era LIBRARY
Calendar Arithmetic Library (libcalendar, -lcalendar) SYNOPSIS
#include <calendar.h> struct date * easterg(int year, struct date *dt); struct date * easterog(int year, struct date *dt); struct date * easteroj(int year, struct date *dt); struct date * gdate(int nd, struct date *dt); struct date * jdate(int nd, struct date *dt); int ndaysg(struct date *dt); int ndaysj(struct date *dt); int week(int nd, int *year); int weekday(int nd); DESCRIPTION
These functions provide calendar arithmetic for a large range of years, starting at March 1st, year zero (i.e., 1 B.C.) and ending way beyond year 100000. Programs should be linked with -lcalendar. The functions easterg(), easterog() and easteroj() store the date of Easter Sunday into the structure pointed at by dt and return a pointer to this structure. The function easterg() assumes Gregorian Calendar (adopted by most western churches after 1582) and the functions easterog() and easteroj() compute the date of Easter Sunday according to the orthodox rules (Western churches before 1582, Greek and Russian Orthodox Church until today). The result returned by easterog() is the date in Gregorian Calendar, whereas easteroj() returns the date in Julian Calendar. The functions gdate(), jdate(), ndaysg() and ndaysj() provide conversions between the common "year, month, day" notation of a date and the "number of days" representation, which is better suited for calculations. The days are numbered from March 1st year 1 B.C., starting with zero, so the number of a day gives the number of days since March 1st, year 1 B.C. The conversions work for nonnegative day numbers only. The gdate() and jdate() functions store the date corresponding to the day number nd into the structure pointed at by dt and return a pointer to this structure. The ndaysg() and ndaysj() functions return the day number of the date pointed at by dt. The gdate() and ndaysg() functions assume Gregorian Calendar after October 4, 1582 and Julian Calendar before, whereas jdate() and ndaysj() assume Julian Calendar throughout. The two calendars differ by the definition of the leap year. The Julian Calendar says every year that is a multiple of four is a leap year. The Gregorian Calendar excludes years that are multiples of 100 and not multiples of 400. This means the years 1700, 1800, 1900, 2100 are not leap years and the year 2000 is a leap year. The new rules were inaugurated on October 4, 1582 by deleting ten days following this date. Most catholic countries adopted the new calendar by the end of the 16th century, whereas others stayed with the Julian Calendar until the 20th century. The United Kingdom and their colonies switched on September 2, 1752. They already had to delete 11 days. The function week() returns the number of the week which contains the day numbered nd. The argument *year is set with the year that contains (the greater part of) the week. The weeks are numbered per year starting with week 1, which is the first week in a year that includes more than three days of the year. Weeks start on Monday. This function is defined for Gregorian Calendar only. The function weekday() returns the weekday (Mo = 0 .. Su = 6) of the day numbered nd. The structure date is defined in <calendar.h>. It contains these fields: int y; /* year (0000 - ????) */ int m; /* month (1 - 12) */ int d; /* day of month (1 - 31) */ The year zero is written as "1 B.C." by historians and "0" by astronomers and in this library. SEE ALSO
ncal(1), strftime(3) STANDARDS
The week number conforms to ISO 8601: 1988. HISTORY
The calendar library first appeared in FreeBSD 3.0. AUTHORS
This manual page and the library was written by Wolfgang Helbig <helbig@FreeBSD.org>. BUGS
The library was coded with great care so there are no bugs left. BSD
November 29, 1997 BSD
All times are GMT -4. The time now is 06:51 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy