Pääsiäissunnuntain päivämäärä lasketaan näin:
function CalcEasterSunday(Year:Integer):TDatetime;
var
C,N,K,I,J,L,M,D : Integer;
begin
C := Year DIV 100;
N := Year MOD 19; // N := Year - 19 * (Year DIV 19);
K := (C - 17) DIV 25;
I := C - C DIV 4 - (C - K) DIV 3 19 * N 15;
I := I - 30 * (I DIV 30);
I := I - (I DIV 28) * (1 - (I DIV 28) * (29 DIV (I 1)) * ((21 - N) DIV 11));
J := Year Year DIV 4 I 2 - C C DIV 4;
J := J MOD 7; // J := J - 7 * (J DIV 7);
L := I - J;
M := 3 (L 40) DIV 44;
D := L 28 - 31 * (M DIV 4);
Result := EncodeDate(Year, M, D);
end;
----
Tämän pitäisi toimia kaikilla Delphin versioilla. JOS ei toimi delphi 1:llä, kokeile muuttaa kokonaislukujen tyyppi Integer -> longint.
Huomaa: TDatetime -tyypin määrittely vaihtui Delphi 2.0:ssa Delphi 1:een verrattuna. Delphi 1 laski vuodet luvusta 1, mutta Delphi 2.0:ssa ja uudemmissa vuosi enkoodataan TDatetime -tyyppiin samoin kuin eräissä Microsoftin ohjelmistoissa.
Vihje: Pääsiäissunnuntain laskukaava Delphillä
Delphiguru
0
137
Vastaukset
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Sannan kirja USA:n bestseller!
"Congratulations to Sanna Marin's HOPE IN ACTION, officially a USA TODAY bestseller!" Kertoo Scribner. Mitäs persut tä19211758- 298184
Metsäalan rikolliset
Jokohan alkaa vähitellen kaatua kulissit näillä ihmiskauppaa harjoittavilla firmoilla.586176Ruotsalaistoimittaja: "Sanna Marinin saunominen saa minut häpeämään"
Sanna Marinin kirja saa täyslaidallisen ruotsalaislehti Expressenissä perjantaina julkaistussa kolumnissa.....voi itku..1715106- 424881
Suomen kaksikielisyys - täyttä huuhaata
Eivätkö muuten yksilöt pysty arvioimaan mitä kieliä he tarvitsevat? Ulkomaalaiselle osaajalle riittää Suomessa kielitai474470Työeläkeloisinta 27,5 mrd. per vuosi
Tuo kaikki on pois palkansaajien ostovoimasta. Ja sitten puupäät ihmettelee miksei Suomen talous kasva. No eihän se kas1164373- 1183845
- 813333
- 481821