Du musst die Funktion nicht kopieren, sondern nur verstehen, was du anscheindend nicht tust!
Der Befehl "
mod" heißt ausgeschrieben "Modulo" (Siehe
Wikipedia).
Und zwar gibt dir Modulo den
Rest von zwei
Ganzzahlen an.
Das Jahr 2000 nehmen wir als Beispiel:
2000 mod 1000 => 0
Dann mit dem Jahr 2007:
2007 mod 1000 => 7
Und dass musst du nun mit allen Überprüfen.
Das macht man, wenn man ein Neuling ist mit
If.
Delphi-Quellcode:
if <Bed> then
begin
<Anw. 1>;
<Anw. 2>;
.
.
.
end;
Zu Deutsch:
Code:
Wenn Bedingung (<Bed>) erfüllt, dann
beginne
Anweisung 1
Anweisung 2
.
.
.
ende
Zusätzlich kannst du auch mit "else" überprüfen, ob der Fall nicht zutrifft:
Delphi-Quellcode:
if <Bed> then
begin
<Anw. 1>;
<Anw. 2>;
.
.
.
end else if <Andere Bed> then
begin
<Anw. 3>;
<Anw. 4>;
.
.
.
end;
else
begin
<Anw. 5>;
<Anw. 6>;
.
.
.
end;
Zu Deutsch:
Code:
Wenn Bedingung (<Bed>) erfüllt, dann
beginne
Anweisung 1
Anweisung 2
.
.
.
ende ansonsten wenn andere Bedingung (<Andere Bed>) erfüllt, dann
beginne
Anweisung 3
Anweisung 4
.
.
.
ende ansonsten
beginne
Anweisung 5
Anweisung 6
.
.
.
ende
Also musst du zuerst überprüfen, ob der Rest (siehe Modulo) von 1000 gleich 0 ist. Wenn dem so ist, dann ist es ein Schaltjahr... Ansonsten musst du überprüfen ob der Rest von 100 nicht 0 ist, oder der Rest von 4 wieder null ist:
if (<Bed 1>) or (<Bed 2>) then
Logisches Oder
if (<Bed 1>) and (<Bed 2>) then
Logisches Und
Das dürfte erstmal reichen!
PS: Bist du dir sicher, dass du erst 2-3 Tage mit Delphi programmiert hast? Ich würde erstmal so die Grundtechniken lernen. Die
DSDT sollte dir da helfen.