Tag der Woche usw.


Wochentag, Tag des Jahres etc.

Autor: SWAG-SUPPORT-TEAM

Programm-gregorianischen; {Julian Day, gregorianisches Datum}
Crt verwendet; {Turbo/Quick Pascal}
Geben Sie String3 = String [3];
String9 = String [9];
Const MonthName: Array [1..12] von String3 =
('Jan', 'Februar', 'Mar', 'April', 'Mai', 'Juni',
'Jul', 'Aug', 'September', 'Oktober', 'Dec', 'Dec');
DayName: Array [1..7] von String9 =
('Sunday', 'Montag', 'Dienstag', 'Mittwoch',
'Donnerstag', 'Freitag', 'Samstag');
Var Tag, JulianDay, F: Real;
Monat: Byte;
Jahr: Integer;
A, B, C, D, E, G, Z: LongInt;
LeapYear: Boolean;

DayofWeek-Funktion (Monat: Byte; Tag: Real; Jahr: Integer): Byte;
Var-iVar1, iVar2: Integer;
beginnen
iVar1: = Jahr MOD 100;
iVar2: = TRUNC (Tag) + iVar1 + iVar1 Div 4;
RS Monat
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; {Case}
iVar2: = (iVar1 + iVar2) MOD 7;
Wenn (iVar2 = 0) dann iVar2: = 7;
DayofWeek: = Byte (iVar2);
Ende; {DayofWeek}

DayofTheYear-Funktion (Monat: Byte; Tag: Real): Integer;
Var N: Integer;
beginnen
Wenn LeapYear dann N: = 1 sonst N: = 2;
N: = 275 * Monat Div 9
-N * ((Monat + 9) Div 12)
+ TRUNC (Tag) - 30;
DayofTheYear: = N;
Ende; {DayofTheYear}

BEGIN {gregorianischen}
ClrScr;
WriteLn ('Gregorianische Datumsangaben v0.0 Dec.91 Greg Vigneault');
WriteLn ('[Geben Sie Julian Tageswerte]');

Wiederholen Sie die WriteLn;
Write('Enter (positive) Julian Tageszahl: ');
ReadLn (JulianDay);
Bis (JulianDay > = 706.0);

JulianDay: = JulianDay + 0,5;
Z: = TRUNC (JulianDay); F: = FRAC (JulianDay);

Wenn (Z < 2299161)
dann A: = Z
sonst beginnen G: = TRUNC ((Z - 1867216.25) / 36524.25);
A: = Z + 1 + G - G-Div 4;
Ende; {If}

B: = A + 1524; C: = TRUNC ((B - 122,1) / 365.25);
D: = TRUNC (365,25 * C); E: = TRUNC ((B - D) / 30.6001);

Tag: B - D - TRUNC = (30.6001 * E) + F;

Wenn (E < 13,5)
Danach Monat: = Byte (E - 1)
elseif (E > 13,5) danach Monat: = Byte (E - 13);

Wenn (Monat > 2.5)
dann im Jahr: = Ganzzahl (C - 4716)
elseif (Monat < 2.5) dann im Jahr: = Ganzzahl (C - 4715);

Wenn ((Jahr MOD 100) <> 0) und ((Year MOD 4) = 0)
dann LeapYear: = True
sonst LeapYear: = False;

Schreiben Sie (Nr. 10, 'Gregorianischen'); Wenn LeapYear dann Write ('LeapYear');
WriteLn ('Datum ist', DayName[DayofWeek(Month,Day,Year)],
', ', MonthName [Monat],' ', Tag: 2:2, ',', Jahr: 4,
' (Tag des Jahres = ', DayofTheYear(Month,Day),')',#10);
Ende. {Gregorianischen}









Tag der Woche usw.


Tag der Woche usw. : Mehreren tausend Tipps, um Ihr Leben einfacher machen.


Wochentag, Tag des Jahres etc.

Autor: SWAG-SUPPORT-TEAM

Programm-gregorianischen; {Julian Day, gregorianisches Datum}
Crt verwendet; {Turbo/Quick Pascal}
Geben Sie String3 = String [3];
String9 = String [9];
Const MonthName: Array [1..12] von String3 =
('Jan', 'Februar', 'Mar', 'April', 'Mai', 'Juni',
'Jul', 'Aug', 'September', 'Oktober', 'Dec', 'Dec');
DayName: Array [1..7] von String9 =
('Sunday', 'Montag', 'Dienstag', 'Mittwoch',
'Donnerstag', 'Freitag', 'Samstag');
Var Tag, JulianDay, F: Real;
Monat: Byte;
Jahr: Integer;
A, B, C, D, E, G, Z: LongInt;
LeapYear: Boolean;

DayofWeek-Funktion (Monat: Byte; Tag: Real; Jahr: Integer): Byte;
Var-iVar1, iVar2: Integer;
beginnen
iVar1: = Jahr MOD 100;
iVar2: = TRUNC (Tag) + iVar1 + iVar1 Div 4;
RS Monat
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; {Case}
iVar2: = (iVar1 + iVar2) MOD 7;
Wenn (iVar2 = 0) dann iVar2: = 7;
DayofWeek: = Byte (iVar2);
Ende; {DayofWeek}

DayofTheYear-Funktion (Monat: Byte; Tag: Real): Integer;
Var N: Integer;
beginnen
Wenn LeapYear dann N: = 1 sonst N: = 2;
N: = 275 * Monat Div 9
-N * ((Monat + 9) Div 12)
+ TRUNC (Tag) - 30;
DayofTheYear: = N;
Ende; {DayofTheYear}

BEGIN {gregorianischen}
ClrScr;
WriteLn ('Gregorianische Datumsangaben v0.0 Dec.91 Greg Vigneault');
WriteLn ('[Geben Sie Julian Tageswerte]');

Wiederholen Sie die WriteLn;
Write('Enter (positive) Julian Tageszahl: ');
ReadLn (JulianDay);
Bis (JulianDay > = 706.0);

JulianDay: = JulianDay + 0,5;
Z: = TRUNC (JulianDay); F: = FRAC (JulianDay);

Wenn (Z < 2299161)
dann A: = Z
sonst beginnen G: = TRUNC ((Z - 1867216.25) / 36524.25);
A: = Z + 1 + G - G-Div 4;
Ende; {If}

B: = A + 1524; C: = TRUNC ((B - 122,1) / 365.25);
D: = TRUNC (365,25 * C); E: = TRUNC ((B - D) / 30.6001);

Tag: B - D - TRUNC = (30.6001 * E) + F;

Wenn (E < 13,5)
Danach Monat: = Byte (E - 1)
elseif (E > 13,5) danach Monat: = Byte (E - 13);

Wenn (Monat > 2.5)
dann im Jahr: = Ganzzahl (C - 4716)
elseif (Monat < 2.5) dann im Jahr: = Ganzzahl (C - 4715);

Wenn ((Jahr MOD 100) <> 0) und ((Year MOD 4) = 0)
dann LeapYear: = True
sonst LeapYear: = False;

Schreiben Sie (Nr. 10, 'Gregorianischen'); Wenn LeapYear dann Write ('LeapYear');
WriteLn ('Datum ist', DayName[DayofWeek(Month,Day,Year)],
', ', MonthName [Monat],' ', Tag: 2:2, ',', Jahr: 4,
' (Tag des Jahres = ', DayofTheYear(Month,Day),')',#10);
Ende. {Gregorianischen}


Tag der Woche usw.

Tag der Woche usw. : Mehreren tausend Tipps, um Ihr Leben einfacher machen.
Freunden empfehlen
  • gplus
  • pinterest

Kürzliche Posts

Kommentar

Einen Kommentar hinterlassen

Wertung