Algo and Math

algoritmo per calcolare il giorno in cui cade la Pasqua

In giro ce ne sono tanti ma tutti fanno uso di tabelle e il loro campo di azione è limitato anche se, a dire il vero, ne ho visti alcuni che arrivano fino all'anno 2500

Algoritmo: é valido per tutti gli anni del calendario gregoriano, cioè dal 1583 fino, teoricamente (se nel frattempo non cambiano le regole), all'anno 9999.
Come esempio ho preso proprio il primo anno utile e ho riportato i valori che assumono tutti i dati intermedi che sono elencati alfabeticamente in ordine di utilizzo.
Anno = 1583
A = Anno mod 19 = 6
B = int(Anno/100) = 15
C = Anno mod 100 = 83
D = int(B/4) = 3
E = B mod 4 = 3
F = int((B+8)/25) = 0
G = int((B-F+1)/3) = 5
H = (19A+B-D-G+15) mod 30 = 16
I = int(C/4) = 20
J = C mod 4 = 3
K = (32+2E+2I-H-J) mod 7 = 3
L = int((A+11H+22K)/451) = 0
M = H+K-7L+114 = 133
Mese = M mod 31 = 4
Giorno = int(M/31)+1 = 10
Pasqua 10/04/1583
Exit mobile version