procedure gdate() string date {prompt="Date"} string day {prompt="Abbreviated day"} string month {prompt="Abbreviated month"} string year {prompt="Year"} string time {prompt="Time"} string tzone {prompt="Time zone"} string tdate {prompt="Date and time"} string ddate {prompt="Date and time"} string adate {prompt="Date and time"} string fdate {prompt="FITS standard format date string"} string ndate {prompt="Numeric date string (logical)"} string udate {prompt="Numeric date string (US)"} string edate {prompt="Numeric date string (Europe)"} int nyear {prompt="Year number"} int nmon {prompt="Month number of the year"} int nday {prompt="Day number of the month"} begin string cdy, cmn, ctm, ctz, cyr, cimn, cidy int idy date | scanf ("%s %s %d %s %s %s", cdy, cmn, idy, ctm, ctz, cyr) if ( cmn == "Jan" ) { cimn = "01" } if ( cmn == "Feb" ) { cimn = "02" } if ( cmn == "Mar" ) { cimn = "03" } if ( cmn == "Apr" ) { cimn = "04" } if ( cmn == "May" ) { cimn = "05" } if ( cmn == "Jun" ) { cimn = "06" } if ( cmn == "Jul" ) { cimn = "07" } if ( cmn == "Aug" ) { cimn = "08" } if ( cmn == "Sep" ) { cimn = "09" } if ( cmn == "Oct" ) { cimn = "10" } if ( cmn == "Nov" ) { cimn = "11" } if ( cmn == "Dec" ) { cimn = "12" } cidy = str(idy) if ( idy<10 ) { cidy = "0"//str(idy) } date = cmn//" "//cidy//" "//cyr day = cdy month = cmn year = cyr time = ctm tzone = ctz # Date and time (%Mmm %dd %YYyy %hh:mm:ss) tdate = cmn//" "//cidy//" "//ctm//" "//cyr # Date and time (%Ddd %Mmm %dd %hh:mm:ss %Zzz %YYyy) ddate = cdy//" "//cmn//" "//cidy//" "//ctm//" "//ctz//" "//cyr # Date and time (%Ddd %dd-%Mmm-%YYyy %hh:mm:ss) adate = cdy//" "//cidy//"-"//cmn//"-"//cyr//" "//ctm # FITS standard format date string fdate = cyr//"-"//cimn//"-"//cidy//"T"//ctm # Numeric date string (logical) (%YYyy/%mm/%dd) ndate = cyr//"/"//cimn//"/"//cidy # Numeric date string (US) (%mm/%dd/%yy) udate = cimn//"/"//cidy//"/"//substr(cyr,3,4) # Numeric date string (Europe) (%dd/%mm/%yy) edate = cidy//"/"//cimn//"/"//substr(cyr,3,4) nyear = int(cyr) nmon = int(cimn) nday = idy end