Linguaggio C/C++ – Calcolo della Pasqua con metodo di Gauss
Algoritmo
Partendo dall’anno di cui si vuole conoscere la Pasqua, occorre calcolare in primis i seguenti valori:a = Anno mod 19
b = Anno mod 4
c = Anno mod 7
Da qui si procede con i seguenti calcoli:d = (19*a + M) mod 30
e = (2*b + 4*c + 6*d + N) mod 7
dove l’operatore mod
indica il resto della divisione e M
ed N
variano in base all’anno (in particolare al secolo), come mostrato dalla seguente tabella:
Periodo | M | N |
1600-1699 | 22 | 2 |
1700-1799 | 23 | 3 |
1800-1899 | 23 | 4 |
1900-1999 | 24 | 5 |
2000-2099 | 24 | 5 |
2100-2199 | 24 | 6 |
A questo punto, se (d + e) < 10
, allora la Pasqua cade a Marzo nel giorno (d + e + 22)
, altrimenti ad Aprile nel giorno (d + e − 9)
.
Nel secondo caso vi sono però due eccezioni:
- Se la data risultante è il 26 aprile, allora la Pasqua si anticipa al 19 aprile;
- Se la data risultante è il 25 aprile e contemporaneamente d = 28, e = 6 e a > 10, allora la Pasqua si anticipa al 18 aprile.
Visite: 1620
mercoledì 30 Marzo - 2022