Pääsiäissunnuntain laskukaavat

Anonyymi-ap

Alla on kaksikin erilaista pääsiäissunnuntain laskukaavaa.

Ensimmäinen on laadittu Helsingin yliopiston kalenteritoimiston "rakennamme kalenterin" -artikkelissa olleiden tietojen pohjalta.

Jälkimmäistä käyttää katolinen kirkko.

Molemmat algoritmit ovat sellaisenaan käännettävissä tietokoneohjelman osaksi Delphillä, toiminevat sellaisenaan tai hyvin vähäisin muutoksin myös FreePascalissa ( https://www.freepascal.org/ ).

Mutta:
Onko tietoa: tuottavatko molemmat algoritmit AINA saman lopputuloksen?

Yleistä tietoa algoritmeistä, pääsiäisen sijainnista kalenterissa ja algoritmien käyttöalueesta (=minä vuonna algoritmi on pätevä):

Algoritmi on pätevä vuonna 1583 ja kaikkina sen jälkeisinä vuosina.
Tuo vuosiluku ilmeisesti liittyy gregoriaanisen kalenterin käyttöönottoon, ja siksi algoritmi ei välttämättä toimi oikein ennen gregoriaanisen kalenterin käyttöönottoa.

Pääsiäinen toistuu täsmälleen samanlaisena kalenterissa 5700000 vuoden välein.

Tuo 5700000 tulee siitä, että se on pienin yhteinen jaettava näille luvuille:
19, 4000, 37500 ja 400.

Mainittakoon vielä:

Ensimmäisen algoritmin käyttöesimerkki:

var
DT1 : TDateTime;
S : String;

begin
// Laske pääsiäissunnuntai ja tulosta päivämäärä ISO 8601 -standardin mukaan:
DT1 := CalcEasterSunday(2024);
S := FormatDateTime('yyyy-mm-dd', DT1);

// Komentoriviohjelmissa:
{$APPTYPE CONSOLE}
WriteLn('Pääsiäissunnuntai on ', S);

// GUI -ohjelmissa (Memo1 = TMemo -tyyppiä):
Memo1.Lines.Add('Pääsiäissunnuntai on ' + S);
end;

// ja sitten itse algoritmit:

// algoritmi 1:
function CalcEasterSunday(Year:Integer):TDatetime;
var
C,N,K,I,J,L,M,D : Integer;

begin
C := Year DIV 100;

N := Year MOD 19;

K := (C - 17) DIV 25;

I := C - (C DIV 4) - (C - K) DIV 3 + 19 * N + 15;
I := I MOD 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;

L := I - J;
M := 3 + (L + 40) DIV 44;
D := L + 28 - 31 * (M DIV 4);

Result := EncodeDate(Year, M, D);
end;

// algoritmi 2: Tätä käyttää katolinen kirkko:
function CatholicEasterMethod(year:Integer):Integer; // 22..31 = March ; R >= 32: April R-31 (April 1..25)
var
A,B,C,D,E,F,G : Integer; // Aloysius Lilius / Christophorus Clavius algorithm - used by the Catholic church.

begin

A := year MOD 19 + 1;
B := year DIV 100 + 1;
C := (3 * B) DIV 4 - 12;
D := (8 * B + 5) DIV 25 - 5;
E := (year * 5) DIV 4 - 10 - C;
F := ( (11 * A + 20 + D - C) MOD 30 + 30) MOD 30; // (the double MOD prevents F to go below zero for large years)

if (F = 24) or ((F = 25) and (A > 11))
then F := F + 1;

G := 44 - F;

if G < 21
then G := G + 30;

result := G + 7 - (E + G) MOD 7;
end;

Bonuskysymys:
Onko Fortumin ex-toimitusjohtaja Mikael Lilius jotain sukua (mitä?) tuon katolisen kirkon algoritmin laatijalle Aloysius Liliukselle ?

0

329

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000

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

      Luetuimmat keskustelut

      1. Persujen VigeIius noIasi taas itsensä

        Kun uhriutui vuonna 2024 (siis persujen "vahtivuorolla") Tampereella aloittaneen perheryhmäkodin toiminnasta. ”Leviää k
        Maailman menoa
        37
        2373
      2. Persut ei kestä heidän johtajistaan tehtyä huumoria

        Laajalti tiedostettu tosiasia on, että autoritaariset johtajat ja erinäiset diktaattorit eivät kestä heidän kustannuksel
        Maailman menoa
        48
        2010
      3. Kuka omistaa entisen Veljeskodin?

        Kenellä on varaa pitää hiljattain remontoitua rakennusta tyhjillään? Tehdäänkö siitä Suomen kallein kirpputori vai mikä
        Ähtäri
        9
        1946
      4. Vasemmistoliitto peruisi sosiaaliturvan heikennykset

        He palauttaisivat työttömyysturvan ja asumstuen suojaosat, eli saisi jälleen tienata 300 euroa kuukaudessa ilman tukien
        Maailman menoa
        42
        1661
      5. Jos voisit kysyä

        Kaivatultasi vielä yhden kysymyksen, mikä se olisi? Aloitan: Mitä sinä halusit minusta?
        Ikävä
        136
        1381
      6. Oli kiva nähdä sut

        vaikkakin kaukaa ja nopeasti. Tiedän kyllä tasan tarkkaan missä mennään, joten anteeksi jos pilasin päiväsi, ei ollut mi
        Suhteet
        22
        971
      7. Välillä kyllä naurattaakin tämä kahden aikuisen meininki

        Se nyt on aivan selvä asia että kumpikin on päälakeensa myöten rakastunut, ja sinä se olet koko ajan ollutkin. 😘
        Ikävä
        62
        883
      8. Talk Show isäntä Jimmy Kimmel sai kenkää

        Vasurina heitti sopimatonta läppää murhatusta Charlie Kirkistä tai oikeammin murhaajan poliittisesta taustasta ja kuinka
        Maailman menoa
        118
        861
      9. Jos voisit palata yhteen risteykseen

        ..mikä se elämässäsi olisi?
        Ikävä
        67
        856
      10. Lamppu syttyi

        Tiedätkö mitä mies, olen aivan yhtä rakastunut suhun. Kyllä. Koita jaksaa eiköhän me kohta nähdä ❤️
        Ikävä
        67
        847
      Aihe