Delphi-Code at gokiburi.de

Ostersonntagsrechner


Inhalt: Das Programm berechnet für das angegebene Jahr das Datum des Ostersonntags. Es benutzt dazu die Gaußsche Osterformel.

Nutzung: Geben Sie das gewünschte Jahr ein. Klicken Sie danach auf den Button "Berechnen".

Version: 1.0.0.20

Größe: 902 KByte

Letzte Änderung: 30. August 2010

Download: Ostersonntag.exe

34 Mal heruntergeladen




Funktion: Die Haupt-Funktion des Programms setzt die Gaußsche Osterformel in Delphi um.
function OsterSonntag(Jahr : integer) : TDateTime;
var
  a, b, c, d, e, H1, H2, n, m, temp, ostern : integer;
begin
  if not ((jahr > 1583) and (jahr < 3900)) then
    raise Exception.CreateFmt('function OsterSonntag: Parameter Jahr ' +
    'muss zwischen 1583 und 3900 liegen, ist aber %d', [Jahr])
  else
  begin
    a := Jahr mod 19;
    b := Jahr mod 4;
    c := Jahr mod 7;
    H1 := Jahr div 100;
    H2 := Jahr div 400;
    n := 4 + H1 - H2;
    m := 15 + H1 - H2 - ((8 * H1 + 13) div 25);
    d := (19 * a + m) mod 30;
    e := (2 * b + 4 * c + 6 * d + n) mod 7;
    if d + e = 35 then ostern := 50;
    if (d = 28) and (e = 6) and (a > 10) then ostern := 49
      else ostern := 22 + d + e;
    if ostern > 31 then
    begin
      temp := ostern - 31;
      case temp of
        26 : temp := 19;
        25 : if (d = 28) and (a > 10) then temp := 18;
      end;
      result := EncodeDate(Jahr, 4, temp);
    end
    else
      result := EncodeDate(Jahr, 3, ostern);
  end
end;