Bonjour,
Voila deja quelques temps que je frequente ce forum... ;-)
Dabord comme simple visiteur en enfin comme membre....
Mais aujourd'hui, je me lence et ous soumet donc ma 1ere question...
Donc vola
Je cherchais comment calculer le jour de paques pour le definir comme jour ferié d'un planning....
J'ai trouvé la méthode de Zeller
y est l'année à tester (soit 2006 dans cet exemple)
c = y / 100 = 2006 / 100 = 20
n = reste de (y / 19) = reste de (2006 / 19) = 11
k = (c - 17) / 25 = (20 - 17) / 25 = 0
b = c / 4 = 20 / 4 = 5
e = (c - k) / 3 = (20 - 0) / 3 = 6
f = c - b - e + (19 * n) + 15 = 20 - 5 - 6 + (19 * 11) + 15 = 233
h = reste de (f / 30) = reste de (233 / 30) = 23
p = h / 28 = 23 / 28 = 0
q = 29 / (h + 1) = 29 / (23 + 1) = 1
r = (21 - n) / 11 = (21 - 11) / 11 = 0
i = h - (p * (1 - (p * q * r))) = 23 - (0 * (1 - (0 * 1 * 0))) = 23
s = y / 4 = 2006 / 4 = 501
t = c / 4 = 20 / 4 = 5
u = y + s + i + 2 - c + t = 2006 + 501 + 23 + 2 - 20 + 5 = 2517
j = reste de (u / 7) = reste de (2517 / 7) = 4
w = (i - j + 40) / 44 = (23 - 4 + 40) / 44 = 1
m = 3 + w = 3 + 1 = 4 = Avril
x = m / 4 = 4 / 4 = 1
d = i - j + 28 - (31 * x) = 23 - 4 + 28 - (31 * 1) = 16
ie. Pour année 2006, date de Pâques est Avril 16.
Donc ma question:
Connaissez vous une solution plus simple (a part declarer les dates de paques pour les 10 ans avenir...)
Et d'autre part, Comment faire pour eviter de calculer cette fonction à chaque appel d'une date.
Merci de vos reponces....
@+ YvesP
Partager