Ich muss ein Programm schreiben zum Thema Schaltjahre. Man gibt das Jahr ein und er sagt dir obs eins ist oder nicht.
Ansatz: Zahl durch 4 teilbar ohne Kommastelle
Ich hab TP 5.5, 7.0 und FreePascal aber irgendwie laufen alle nicht richtig bzw führen es nicht aus.
Im Internet gibts diverse Ansätze, vllt kann damit ja einer was anfangen.
Am besten wäre ein fertiger Quelltext zum kopieren :mrgreen: Kennt sich da jemand aus, vllt Huelle?!
F: Wie ermittle ich Schaltjahre? A: Alle Jahre, die ohne Rest durch 4 teilbar sind, jedoch nicht durch 100, oder aber durch 400, sind Schaltjahre. Ein kompakter Algorithmus:
function schalt(jahr:word):boolean;
begin
schalt:=(jahr mod 4=0) xor (jahr mod 100=0) xor (jahr mod 400=0);
end;
Ein effizienter Algorithmus:
function schalt(jahr:word):boolean;
begin
if jahr and 3<>0 then
schalt:=false
else if jahr mod 100<>0 then
schalt:=true
else
schalt:=(jahr mod 400=0);
end;