Einzelnen Beitrag anzeigen

Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#1

Wochentag bestimmen mt Zellers Kongruenz

  Alt 27. Jan 2012, 16:47
Delphis DayOfWeek und DayOfTheWeek liefern ab 1.1.0001 bis 4.10.1582 den Wochentag im Julianischen
Kalender, ab 15.10.1582 bis 31.12.9999 den Wochentag des Gregorianischen Kalenders. Alternativ und
plattformunabhängig lassen sich die Wochentage beider Kalender nach folgenden Algorithmen von
Christian Zeller bestimmen.
Zu beachten ist, dass Januar und Februar als 13. und 14. Monat des Vorjahres zu betrachten sind.

Delphi-Quellcode:
//Zellersche Wochentagsformel für den Julianischen Kalender
//anwendbar für den Scaliger-Zeitraum 1.1.4713 v. Chr. bis
//22.1.3268 0 = Sa 1 = So usw.
//Wolfgang Mix - Delphi-PRAXiS
function dowjul(d,m,y:integer):integer;
var k,j:integer;
Begin
  if m in[1,2] then
  begin
    y:=y-1;
    m:=m+12;
  end;

  k:= y mod 100;// Die letzten beiden Ziffern der Jahreszahl
  j:= y div 100;// Die ersten beiden Ziffern der Jahreszahl

  result:=(d+((m+1)*26 div 10 +k+(k div 4)+5-j)) mod 7;
end;
Delphi-Quellcode:
//Zellersche Wochentagsformel für den Gregorianischen Kalender
// 0 = Sa 1 = So usw.
//Wolfgang Mix - Delphi-PRAXiS
function dowgregor(d,m,y:integer):integer;
var k,j:integer;
Begin
  if m in[1,2] then
  begin
    y:=y-1;
    m:=m+12;
  end;

  k:= y mod 100;// Die letzten beiden Ziffern der Jahreszahl
  j:= y div 100;//Die ersten beiden Ziffern der Jahreszahl


  result:=(d+((m+1)*26 div 10 +k+(k div 4)+ j div 4-2*j)) mod 7;
end;
Im gregorianischen Kalender lassen sich nach Vereinfachung mit Monatsmerkzahlen die Wochentage
auch einfach durch Kopfrechnung bestimmen. Besonders empfehlenwert dazu:

Dr. Dr. Mittrich - Rechnen mit dem Weltmeister S. 153 ff.
ISBN 9783-596-18989-2


Weitere Erläuterungen z.B. hier:
http://de.wikipedia.org/wiki/Zellers_Kongruenz
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824

Geändert von Wolfgang Mix (27. Jan 2012 um 18:08 Uhr)
  Mit Zitat antworten Zitat