Home » Tipps & Tricks » Algorithmen » Feiertage » Pfingsten

Pfingsten

Als Parameter muss zuerst wieder das genaue Datum von Ostern übergeben werden, da Pfingsten in Abhängigkeit von Ostern steht. Der genaue Ostern-Termin kann mit der Procedure aus dem entsprechenden Tipp ermittelt werden.
Die letzten beiden Parameter geben schließlich das Datum von Pfingsten zurück.

procedure Pfingsten(oday, omon: integer; var pday, pmon: integer);
begin
  pday := oday + 49;
  pmon := omon;
  if pday > 30 then
  begin
    dec(pday, 30);
    inc(pmon);
  end;
  if pday > 31 then
  begin
    dec(pday, 31);
    inc(pmon);
  end;
end;

Aufrufen könnte man die Procedure z.B. so, wenn Ostern in diesem Jahr am 15.4. ist:

procedure TForm1.Button1Click(Sender: TObject);
var
  Day, Month: Integer;
begin
  Pfingsten(15, 4, Day, Month);
  Label1.Caption := IntToStr(Day);
  Label2.Caption := IntToStr(Month);
end;