Vihje: Pääsiäissunnuntain laskukaava Delphillä

Delphiguru

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.

0

122

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000

      Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

      Luetuimmat keskustelut

      1. Sä olet epävakaa

        tai ainakin yrität onnistuneesti vaikuttaa siltä. Ei sun kanssa uskalla ruveta yhtään mihinkään, menis hommat ojasta all
        Ikävä
        46
        2075
      2. Mieti miten paljon yritin

        Löytää yhteyttä kanssasi uudelleen sen väärinymmärryksen jälkeen. Koen etten tullut puoleltasi hyvin kohdelluksi mies😔
        Ikävä
        57
        1819
      3. Kurkkiiko myyrä jo

        Milloin tulee kolostaan?
        Ikävä
        36
        1534
      4. Yksi viesti häneltä ja ottaisin takaisin

        Mutta ei sitä tule. Ja ehkä parempi niin, tein jo valintani. En saanut häneltä tarpeeksi, kaikki muu meni minun edelle j
        Ikävä
        32
        1443
      5. Kaikki on hyvin rakkaani

        Ja tulee olemaan.
        Ikävä
        78
        1238
      6. En enää uskalla laittaa sulle viestiä

        Naiselta miehelle ****
        Ikävä
        58
        1122
      7. Keskisarjan puheet

        Onko kansanedustajan sopivaa puhua tuollai vai pitäisikkö potkia pois eduskunnasta?
        Suomussalmi
        189
        973
      8. En ikinä koskaan

        En tule ikinä hyväksymään!
        Tunteet
        57
        949
      9. Sovitaanko ja halataanko?

        Pyydetään toisiltamme anteeksi...❤️
        Ikävä
        49
        913
      10. Olen selvästi rikki

        Narsistiset ihmiset jotenkin koukuttaa minut.
        Ikävä
        24
        894
      Aihe