À quoi sert ce calculateur
Vous êtes-vous déjà demandé quel jour de la semaine vous êtes venu au monde — un dimanche paisible ou un lundi bien chargé ? Ce calculateur du jour de naissance vous révèle le jour exact de votre date de naissance et, en prime, vous indique sur quel jour tombera votre prochain anniversaire. Il fonctionne pour n'importe quelle date du calendrier grégorien.
Comment l'utiliser
Saisissez votre année de naissance, choisissez le mois dans le menu déroulant, puis indiquez le jour. Cliquez sur « Calculer ». L'encadré principal affiche le jour de la semaine de votre naissance, tandis que le tableau ci-dessous précise le jour de votre prochain anniversaire — de quoi commencer à organiser la fête !
La formule expliquée
L'outil s'appuie sur la congruence de Zeller, un algorithme classique permettant de déterminer le jour de la semaine pour n'importe quelle date. Janvier et février sont considérés comme les mois 13 et 14 de l'année précédente. La formule calcule la valeur h, où 0 = samedi, 1 = dimanche, et ainsi de suite. Nous la convertissons ensuite dans l'ordre habituel dimanche–samedi pour l'affichage. Comme elle repose uniquement sur de l'arithmétique entière, elle est exacte et ne dérive jamais.
$$ h = \left( D + \left\lfloor \frac{13(m+1)}{5} \right\rfloor + K + \left\lfloor \frac{K}{4} \right\rfloor + \left\lfloor \frac{J}{4} \right\rfloor + 5J \right) \bmod 7 $$ $$ \text{où}\quad \left\{ \begin{aligned} D &= \text{Jour de naissance} \\ m &= \text{Mois}\ \ (\text{Jan,Fév} \to 13,14\text{ de l'année précédente}) \\ Y &= \text{Année de naissance}\ (\text{ajustée}) \\ K &= Y \bmod 100,\quad J = \left\lfloor Y/100 \right\rfloor \end{aligned} \right. $$
Exemple concret
Prenons le 15 juillet 1990. Ici, \(m = 7\), \(d = 15\), année = 1990, donc \(k = 90\) et \(j = 19\). On obtient alors $$ h = (15 + \lfloor 13\cdot 8/5 \rfloor + 90 + \lfloor 90/4 \rfloor + \lfloor 19/4 \rfloor + 5\cdot 19) \bmod 7 = (15 + 20 + 90 + 22 + 4 + 95) \bmod 7 = 246 \bmod 7 = 1 $$ soit dimanche. Une personne née le 15 juillet 1990 est donc venue au monde un dimanche.
Définitions des variables
- \(D\) — Jour du mois. Le jour du calendrier exactement tel qu'écrit, de 1 à 31. Aucun ajustement n'est jamais appliqué à \(D\).
- \(m\) — Numéro de mois ajusté. Mars = 3 à décembre = 12 sont utilisés tels quels. Janvier et février sont spéciaux : ils sont traités comme les mois 13 et 14 de l'année précédente. C'est parce que la congruence de Zeller traite mars comme le début de l'année, ce qui place le jour du saut à la fin du cycle.
- \(Y\) — Année ajustée. Si la date est en janvier ou février, soustrayez 1 de l'année calendaire (car ces mois appartiennent à l'année précédente dans ce schéma). Tous les autres mois conservent l'année originale.
- \(K\) — Année du siècle. \(K = Y \bmod 100\), c'est-à-dire les deux derniers chiffres de l'année ajustée. Pour 2024, c'est 24 ; pour 1999, c'est 99.
- \(J\) — Siècle sans base. \(J = \lfloor Y / 100 \rfloor\), le numéro du siècle sans arrondir. Pour 2024, c'est 20 ; pour 1999, c'est 19.
- \(h\) — Code de jour résultant. Le reste modulo 7 après combinaison de tous les termes, donnant une valeur 0–6 qui s'associe à un jour de la semaine en utilisant le tableau de codes de résultat ci-dessus.
Autres exemples détaillés
Exemple 1 — Une date de janvier (montrant le décalage du mois et de l'année)
Prenez 15 janvier 2000. Parce que le mois est janvier, définissez \(m = 13\) et utilisez l'année précédente, donc l'année ajustée est \(Y = 1999\). Ensuite, \(D = 15\), \(K = 1999 \bmod 100 = 99\), et \(J = \lfloor 1999/100 \rfloor = 19\).
$$h = \left(15 + \left\lfloor \tfrac{13(13+1)}{5} \right\rfloor + 99 + \left\lfloor \tfrac{99}{4} \right\rfloor + \left\lfloor \tfrac{19}{4} \right\rfloor + 5 \cdot 19 \right) \bmod 7$$
Les termes plancher sont \(\lfloor 182/5 \rfloor = 36\), \(\lfloor 99/4 \rfloor = 24\), et \(\lfloor 19/4 \rfloor = 4\). En additionnant : \(15 + 36 + 99 + 24 + 4 + 95 = 273\). Ensuite, \(273 \bmod 7 = 0\), donc \(h = 0\) → samedi. Le 15 janvier 2000 était en effet un samedi.
Exemple 2 — Un anniversaire du jour bissextile (29 février 2000)
Pour 29 février 2000, février est également décalé : \(m = 14\) et l'année ajustée est \(Y = 1999\), donnant \(K = 99\), \(J = 19\), et \(D = 29\).
$$h = \left(29 + \left\lfloor \tfrac{13(14+1)}{5} \right\rfloor + 99 + \left\lfloor \tfrac{99}{4} \right\rfloor + \left\lfloor \tfrac{19}{4} \right\rfloor + 5 \cdot 19 \right) \bmod 7$$
Ici, \(\lfloor 195/5 \rfloor = 39\), \(\lfloor 99/4 \rfloor = 24\), \(\lfloor 19/4 \rfloor = 4\). En additionnant : \(29 + 39 + 99 + 24 + 4 + 95 = 290\), et \(290 \bmod 7 = 3\), donc \(h = 3\) → mardi. Le 29 février 2000 est tombé sur un mardi. Notez que 2000 est une année bissextile car elle est divisible par 400.
Exemple 3 — Une date récente (4 juillet 2023)
Pour 4 juillet 2023, juillet est un mois normal, donc \(m = 7\) sans changement d'année : \(Y = 2023\), \(D = 4\), \(K = 23\), \(J = 20\).
$$h = \left(4 + \left\lfloor \tfrac{13(7+1)}{5} \right\rfloor + 23 + \left\lfloor \tfrac{23}{4} \right\rfloor + \left\lfloor \tfrac{20}{4} \right\rfloor + 5 \cdot 20 \right) \bmod 7$$
Les planchers sont \(\lfloor 104/5 \rfloor = 20\), \(\lfloor 23/4 \rfloor = 5\), \(\lfloor 20/4 \rfloor = 5\). En additionnant : \(4 + 20 + 23 + 5 + 5 + 100 = 157\), et \(157 \bmod 7 = 3\), donc \(h = 3\) → mardi. La fête de l'indépendance 2023 était un mardi.
Questions fréquentes
Fonctionne-t-il pour les dates anciennes ? Oui, pour toute date du calendrier grégorien proleptique. Les dates antérieures à la réforme du calendrier de 1582 peuvent différer des archives historiques qui utilisaient le calendrier julien.
Comment les années bissextiles sont-elles gérées ? La congruence de Zeller prend automatiquement en compte les années bissextiles grâce à son arithmétique modulaire ; les dates du 29 février sont donc calculées correctement.
Et si mon anniversaire est déjà passé cette année ? Le résultat concernant le prochain anniversaire se décale automatiquement à l'année suivante si votre anniversaire a déjà eu lieu cette année.