Ukedag etc

ukedag, dag av året etc
bidragsyter: SWAG SUPPORT TEAM
Program gregorianske; {Julian dag til gregorianske dato} Bruker Crt; {Turbo /Hurtig Pascal} Skriv string3 = String [3]; String9 = String [9]; Konst MonthName: Array [1..12] av string3 = ('Jan', 'februar', 'mar', 'april', 'May', 'juni', 'juli "," august "," september ", 'Oct', 'november' ', felles det'); DayName: Array [1..7] av String9 = ('søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'Friday', 'lørdag'); Var Day, JulianDay, F: Fast; Måned: Byte; År: Integer; A, B, C, D, E, G, Z: LongInt; Leapyear: Boolean;
Funksjon dayOfWeek (Måned: Byte; Day: Fast, År: Integer): Byte; Var iVar1, iVar2: Integer; begynne iVar1: = År MOD 100; iVar2: = AVKORT (dag) + iVar1 + iVar1 div 4; Sak Month of 4, 7: iVar1: = 0; 1, 10: iVar1: = 1; 5: iVar1: = 2; 8: iVar1: = 3; 2,3,11: iVar1: = 4; 6: iVar1: = 5; 9,12: iVar1: = 6; ende; {Sak} iVar2: = (iVar1 + iVar2) MOD 7; if (iVar2 = 0) så iVar2: = 7; DayOfWeek: = Byte (iVar2); ende; {DayOfWeek}
Funksjon DayofTheYear (måned: Byte; DAY: Fast): Integer; Var N: Integer; begynne hvis Leapyear deretter N: = 1 ellers N: = 2; N: = 275 * Måned div 9 - N * ((måned + 9) div 12) + AVKORT (Day) - 30; DayofTheYear: = N; ende; {DayofTheYear}
begin {gregorianske} ClrScr; WriteLn ('gregorianske datoer v0.0 Dec.91 Greg Vigneault'); WriteLn ('[Enter Julian Day verdier]');
Gjenta WriteLn; Skriv ('Enter (positiv) Julian dag nummer:'); ReadLn (JulianDay); Inntil (JulianDay > = 706,0);
JulianDay: = JulianDay + 0,5; Z: = AVKORT (JulianDay); F: = FRAC (JulianDay);
if (Z < 2299161) A: = Z annet begynne G: = AVKORT ((Z - 1.867.216,25) /36524,25); A: = Z + 1 + G - G div 4; ende; {if}
B: = A + 1524; C: = AVKORT ((B - 122,1) /365,25); D: = AVKORT (365,25 * C); E: = AVKORT ((B - D) /30,6001);
Day: = B - D - AVKORT (30,6001 * E) + F;
if (E < 13,5) da Måned: = Byte (E - 1) else if (E > 13,5) da Måned: = Byte (E - 13),
if (Måned > 2,5) så År: = Integer (C - 4716) else if (Måned < 2,5) deretter År: = Integer (C - 4715);
if ((år MOD 100) < > 0) og ((år MOD 4) = 0) så Leapyear: = True annet Leapyear: = False;
Write (# 10, "gregoriansk '); hvis Leapyear deretter Skriv ('Leapyear'); WriteLn ('hittil er ", DayName [dayOfWeek (måned, dag, år)],', ', MonthName [måned],' ', Dag: 2: 2,', ', År: 4,' (dagen i året = ', DayofTheYear (måned, dag),') ', # 10); slutt. {Gregorian} Anmeldelser



Previous:
Next Page: