Le calendrier, les années bissextiles et les fractions continues Grand Oral · mathématiques expertes, HGGSP, physique-chimie Un support de connaissances pour construire sa propre question

← Tous les textes du Grand Oral

MathsMaths expertesHGGSPPC

Ce texte s'appuie sur l'option maths expertes : division euclidienne, congruences, PGCD, algorithme d'Euclide, théorème de Bézout.

Un calendrier doit accorder des horloges qui ne s'accordent pas : la rotation de la Terre (le jour), le tour de la Lune (le mois) et le tour du Soleil (l'année). Une année ne contient pas un nombre entier de jours, et c'est toute la difficulté. Pour la résoudre, il faut approcher un nombre décimal par une fraction simple : « tant d'années bissextiles tous les tant d'ans ». Jules César, le pape Grégoire XIII, Omar Khayyam et les révolutionnaires de 1793 ont chacun choisi leur fraction.

Ce texte suit cette histoire en partant chaque fois d'un calcul fait à la main. Il montre que les meilleures fractions sont données par un outil des maths expertes, l'algorithme d'Euclide, sous la forme des fractions continues. Il rassemble des connaissances ; à chacun d'y choisir une direction et d'y construire sa question.

Sommaire
  1. Trois horloges qui ne s'accordent pas
  2. Le calendrier julien et sa dérive
  3. La réforme grégorienne de 1582
  4. Les fractions continues : les meilleures règles possibles
  5. Omar Khayyam et le calendrier jalali
  6. Le cycle de Méton et la date de Pâques
  7. Quel jour de la semaine ?
  8. Le calendrier républicain
  9. Des directions pour construire sa question
Trois horloges qui ne s'accordent pas

Le jour est l'unité de base. L'année tropique est la durée qui sépare deux passages du Soleil au même point des saisons, par exemple deux équinoxes de printemps ; elle vaut environ $365{,}2422$ jours, soit $365$ jours $5$ h $48$ min $45$ s. La lunaison, d'une nouvelle lune à la suivante, dure environ $29{,}5306$ jours.

Aucun de ces nombres n'est entier, et ils ne sont pas multiples les uns des autres. Douze lunaisons font $12 \times 29{,}5306 \approx 354{,}37$ jours, soit environ $11$ jours de moins qu'une année. Un calendrier purement lunaire, comme le calendrier musulman (années de $354$ ou $355$ jours), glisse donc d'environ $11$ jours par an par rapport aux saisons : c'est pourquoi le mois de ramadan tombe tantôt l'été, tantôt l'hiver, et fait le tour de l'année en environ $33$ ans ($365 / 11 \approx 33$).

Un calendrier solaire, au contraire, veut garder les saisons à leur place : l'équinoxe de printemps doit tomber chaque année autour du même jour. Avec des années de $365$ jours, on prend chaque année $0{,}2422$ jour de retard sur le Soleil. Tout le problème est de rattraper ce quart de jour, qui n'est pas tout à fait un quart.

Le calendrier julien et sa dérive

En 46 av. J.-C., Jules César, conseillé par l'astronome Sosigène d'Alexandrie, réforme le calendrier romain, devenu très désordonné. Pour remettre les saisons en place, l'année 46 av. J.-C. compte $445$ jours : on l'a appelée « l'année de la confusion ». À partir de 45 av. J.-C., la règle est simple : trois années de $365$ jours, puis une année de $366$ jours. Après la mort de César, les prêtres l'appliquent mal (une année bissextile tous les trois ans) et Auguste doit corriger l'erreur ; les dates exactes de cette correction sont discutées.

Gravure : portrait de Christophorus Clavius en buste, avec un compas Christophorus Clavius (1538-1612), mathématicien et astronome jésuite, qui défendit et expliqua la réforme grégorienne. Gravure : Francesco Villamena, Wikimedia Commons, domaine public. Un calcul à la main : un jour de retard tous les 128 ans

L'année julienne moyenne dure $\dfrac{3 \times 365 + 366}{4} = 365{,}25$ jours. Elle est trop longue de

$$365{,}25 - 365{,}2422 = 0{,}0078 \text{ jour par an.}$$

Au bout de $n$ ans, l'écart est de $0{,}0078\,n$ jour. Il atteint un jour entier quand $0{,}0078\,n = 1$, c'est-à-dire pour $n = \dfrac{1}{0{,}0078} \approx 128$ ans. Le calendrier julien avance donc d'un jour tous les $128$ ans sur le Soleil : l'équinoxe arrive de plus en plus tôt dans le calendrier.

En 325, au concile de Nicée, l'équinoxe de printemps tombait vers le 21 mars. En 1582, soit $1\,257$ ans plus tard, le décalage accumulé vaut environ

$$1\,257 \times 0{,}0078 \approx 9{,}8 \text{ jours}$$

et l'équinoxe tombait vers le 11 mars. C'est ce décalage d'environ $10$ jours que la réforme de 1582 va supprimer d'un coup.

La réforme grégorienne de 1582

Le décalage gênait surtout l'Église : la date de Pâques dépend de l'équinoxe de printemps, fixée par convention au 21 mars. Le 24 février 1582, le pape Grégoire XIII publie la bulle Inter gravissimas, qui reprend le projet du médecin et astronome Aloysius Lilius, mis au point par une commission où siège Christophorus Clavius. Le savant français François Viète publiera d'ailleurs un calendrier concurrent, en opposition à celui de Clavius.

Première page imprimée de la bulle Inter gravissimas, avec les armes du pape Première page de la bulle Inter gravissimas (1582), qui institue le calendrier grégorien. Image : Wikimedia Commons, domaine public.

La réforme a deux volets.

L'année grégorienne moyenne dure $365{,}2425$ jours, et le calendrier se répète exactement tous les $400$ ans

Étape 1 : compter les années bissextiles. Sur une période de $400$ années consécutives, il y a $100$ millésimes divisibles par $4$ ; parmi eux, $4$ sont divisibles par $100$, et parmi ces $4$, un seul est divisible par $400$. Le nombre d'années bissextiles est donc

$$100 - 4 + 1 = 97.$$

Étape 2 : compter les jours. Ces $400$ années comptent

$$400 \times 365 + 97 = 146\,097 \text{ jours,}$$

soit une année moyenne de $\dfrac{146\,097}{400} = 365{,}2425$ jours.

Étape 3 : la semaine. On effectue la division euclidienne de $146\,097$ par $7$ :

$$146\,097 = 7 \times 20\,871 + 0.$$

Le reste est nul : $400$ ans grégoriens font exactement $20\,871$ semaines. Le 13 octobre 2426 tombera donc le même jour de la semaine que le 13 octobre 2026 : le calendrier grégorien se répète à l'identique tous les $400$ ans.

L'année grégorienne est encore trop longue, mais de très peu : $365{,}2425 - 365{,}2422 = 0{,}0003$ jour par an. Le retard d'un jour n'est atteint qu'au bout de $\dfrac{1}{0{,}0003} \approx 3\,300$ ans (environ $3\,200$ ans avec la valeur plus précise $365{,}24219$). À cette échelle, d'autres effets comptent autant : l'année tropique elle-même varie lentement, et la rotation de la Terre ralentit. Chercher une règle plus précise n'aurait guère de sens.

Une adoption qui a pris trois siècles

Les pays catholiques (Italie, Espagne, Portugal, Pologne) adoptent la réforme dès octobre 1582, la France en décembre : le 9 décembre 1582 y est suivi du 20 décembre. Les pays protestants et orthodoxes refusent longtemps une réforme venue du pape.

  • La Grande-Bretagne et ses colonies d'Amérique attendent 1752 : il faut alors supprimer $11$ jours, car 1700 a été bissextile dans le calendrier julien et pas dans le grégorien. Le mercredi 2 septembre 1752 est suivi du jeudi 14 septembre.
  • La Russie change en 1918 : le 31 janvier est suivi du 14 février ($13$ jours de retard, car 1800 et 1900 se sont ajoutées). La « révolution d'Octobre » a eu lieu le 25 octobre 1917 du calendrier julien, c'est-à-dire le 7 novembre du calendrier grégorien : elle est fêtée en novembre.
  • La Grèce change en 1923. Les Églises orthodoxes calculent encore souvent la date de Pâques avec le calendrier julien, ce qui explique les deux dates de Pâques certaines années.
Les fractions continues : les meilleures règles possibles

Chaque règle de calendrier revient à choisir une fraction $\dfrac{p}{q}$ : mettre $p$ années bissextiles tous les $q$ ans donne une année moyenne de $365 + \dfrac{p}{q}$ jours. César a choisi $\dfrac14$, Grégoire XIII $\dfrac{97}{400}$. Existe-t-il des fractions plus simples et aussi précises ? Pour le savoir, on approche $0{,}2422$ à l'aide de l'algorithme d'Euclide.

L'algorithme d'Euclide, fait à la main

On écrit $0{,}2422 = \dfrac{1\,211}{5\,000}$ et on effectue les divisions euclidiennes successives, comme pour calculer le PGCD de $5\,000$ et $1\,211$ :

5000 = 4 × 1211 + 156
1211 = 7 × 156 + 119
156 = 1 × 119 + 37
119 = 3 × 37 + 8
37 = 4 × 8 + 5

La première ligne s'écrit $\dfrac{5\,000}{1\,211} = 4 + \dfrac{156}{1\,211}$, donc $\dfrac{1\,211}{5\,000} = \dfrac{1}{4 + \frac{156}{1\,211}}$. La deuxième ligne donne de même $\dfrac{1\,211}{156} = 7 + \dfrac{119}{156}$, et ainsi de suite. On obtient l'écriture en fraction continue :

$$0{,}2422 = \cfrac{1}{4 + \cfrac{1}{7 + \cfrac{1}{1 + \cfrac{1}{3 + \cdots}}}}$$

Les quotients successifs $4$, $7$, $1$, $3$, $4$… sont ceux de l'algorithme d'Euclide. En s'arrêtant de plus en plus loin, on obtient les réduites :

$$\frac{1}{4}, \qquad \frac{1}{4 + \frac{1}{7}} = \frac{7}{29},$$ $$\frac{1}{4 + \frac{1}{7 + 1}} = \frac{8}{33}, \qquad \frac{31}{128}.$$
Chaque réduite est une règle de calendrier

On compare chaque fraction à la valeur plus précise $0{,}24219$ :

FractionRègleAnnée moyenneUn jour d'écart en
$\frac{1}{4}$1 sur 4 ans (César)$365{,}25$128 ans
$\frac{7}{29}$7 sur 29 ans$365{,}2414$1 200 ans
$\frac{8}{33}$8 sur 33 ans$365{,}2424$4 300 ans
$\frac{97}{400}$97 sur 400 ans (Grégoire XIII)$365{,}2425$3 200 ans
$\frac{31}{128}$31 sur 128 ans$365{,}2422$au-delà de toute précision utile

La réduite $\dfrac{8}{33}$ est à la fois plus simple et plus précise que la règle grégorienne : huit années bissextiles tous les $33$ ans. La règle de Grégoire XIII a d'autres qualités : elle ne modifie que les années séculaires et se retient facilement. La règle « $31$ sur $128$ ans », c'est-à-dire supprimer une année bissextile tous les $128$ ans dans le calendrier julien, a parfois été proposée ; sa précision dépasse celle avec laquelle on connaît l'évolution de l'année tropique sur des milliers d'années.

Pourquoi les réduites sont irréductibles et si proches

Si on note $a_1 = 4$, $a_2 = 7$, $a_3 = 1$, $a_4 = 3$… les quotients, les numérateurs $p_k$ et dénominateurs $q_k$ des réduites se calculent par récurrence :

$$p_k = a_k\,p_{k-1} + p_{k-2},$$ $$q_k = a_k\,q_{k-1} + q_{k-2},$$

avec $p_{-1} = 1$, $q_{-1} = 0$, $p_0 = 0$, $q_0 = 1$. On le vérifie sur nos valeurs : $p_2 = 7 \times 1 + 0 = 7$ et $q_2 = 7 \times 4 + 1 = 29$ ; $p_4 = 3 \times 8 + 7 = 31$ et $q_4 = 3 \times 33 + 29 = 128$.

Pour tout $k \geqslant 0$, $\;p_k\,q_{k-1} - p_{k-1}\,q_k = (-1)^{k+1}$

On note $d_k = p_k\,q_{k-1} - p_{k-1}\,q_k$ et on raisonne par récurrence.

Initialisation. $d_0 = p_0\,q_{-1} - p_{-1}\,q_0$ $= 0 \times 0 - 1 \times 1 = -1$ $= (-1)^{1}$.

Hérédité. Supposons $d_{k-1} = (-1)^{k}$. En remplaçant $p_k$ et $q_k$ par leurs expressions :

$$\begin{aligned} d_k &= (a_k p_{k-1} + p_{k-2})\,q_{k-1} \\ &\quad - p_{k-1}\,(a_k q_{k-1} + q_{k-2}) \\ &= p_{k-2}\,q_{k-1} - p_{k-1}\,q_{k-2} \\ &= -d_{k-1} = (-1)^{k+1}. \end{aligned}$$

Les termes $a_k\,p_{k-1}\,q_{k-1}$ se sont simplifiés. La propriété est démontrée pour tout $k \geqslant 0$.

Vérification sur nos réduites : $7 \times 4 - 1 \times 29 = -1$, $8 \times 29 - 7 \times 33 = 1$, $31 \times 33 - 8 \times 128 = -1$. Deux conséquences :

  • Chaque réduite est irréductible. L'égalité $p_k\,q_{k-1} - p_{k-1}\,q_k = \pm 1$ est une relation de Bézout : tout diviseur commun de $p_k$ et $q_k$ divise $1$, donc $\mathrm{PGCD}(p_k\,;q_k) = 1$.
  • Deux réduites successives sont très proches. En divisant par $q_k\,q_{k-1}$ :
$$\frac{p_k}{q_k} - \frac{p_{k-1}}{q_{k-1}} = \frac{(-1)^{k+1}}{q_k\,q_{k-1}}.$$

Par exemple $\dfrac{8}{33} - \dfrac{7}{29} = \dfrac{1}{957}$. Les réduites tombent alternativement au-dessus et au-dessous du nombre cherché, et on démontre (on l'admet ici) que chacune vérifie $\left|x - \dfrac{p_k}{q_k}\right| < \dfrac{1}{q_k^2}$ : aucune fraction de dénominateur plus petit n'approche mieux. C'est le sens précis de « meilleure règle possible ».

Essayer soi-même une règle

La figure trace l'écart, en jours, entre le calendrier et le Soleil au fil des années, pour une règle « $p$ années bissextiles tous les $q$ ans ». Une règle est bonne si la droite reste longtemps dans la bande grisée (moins d'un jour d'écart).

var opt = {fontSize: 12, useKatex: false, useMathJax: false, parse: false, fixed: true, highlight: false}; var petit = {fontSize: 11, useKatex: false, parse: false, fixed: true, highlight: false}; var ax = {strokeColor: '#455a64', strokeWidth: 1, fixed: true, highlight: false}; board.create('polygon', [[0, -1], [4000, -1], [4000, 1], [0, 1]], {fillColor: '#b0bec5', fillOpacity: 0.45, borders: {visible: false}, vertices: {visible: false}, fixed: true, highlight: false}); board.create('segment', [[0, -12], [0, 12]], ax); board.create('segment', [[0, 0], [4000, 0]], ax); for (var t = 1000; t <= 4000; t += 1000) { board.create('segment', [[t, -0.4], [t, 0.4]], ax); board.create('text', [t - 260, -1.9, String(t)], petit); } for (var u = -10; u <= 10; u += 5) { if (u !== 0) { board.create('segment', [[0, u], [-40, u]], ax); board.create('text', [-520, u, String(u)], petit); } } board.create('text', [60, 13.4, 'écart (jours)'], petit); board.create('text', [2950, -3.2, 'années'], petit); var sp = board.create('slider', [[150, -21.5], [2500, -21.5], [0, 1, 40]], {withLabel: false, snapWidth: 1}); var sq = board.create('slider', [[150, -26], [2500, -26], [1, 4, 130]], {withLabel: false, snapWidth: 1}); function P() { return Math.round(sp.Value()); } function Q() { return Math.round(sq.Value()); } function err() { return P() / Q() - 0.24219; } board.create('text', [2650, -21.5, function () { return 'p = ' + P(); }], opt); board.create('text', [2650, -26, function () { return 'q = ' + Q(); }], opt); board.create('curve', [[0], [0]], {strokeColor: '#ad1457', strokeWidth: 2, highlight: false}).updateDataArray = function () { var e = err(), X = [], Y = [], t, y; for (t = 0; t <= 4000; t += 20) { y = e * t; if (y > 12 || y < -12) break; X.push(t); Y.push(y); } this.dataX = X; this.dataY = Y; }; function nb(x, d) { return x.toFixed(d).replace('.', ','); } board.create('text', [-500, -14.6, function () { return 'année moyenne : ' + nb(365 + P() / Q(), 4) + ' j'; }], opt); board.create('text', [-500, -17.3, function () { var e = Math.abs(err()); if (e < 1e-5) return 'un jour d\'écart : plus de 100 000 ans'; if (e >= 1) return 'plus d\'un jour d\'écart chaque année'; return 'un jour d\'écart en ' + Math.round(1 / e).toLocaleString('fr-FR') + ' ans'; }], opt); Écart entre la règle « $p$ bissextiles tous les $q$ ans » et le Soleil, avec une année tropique de $365{,}24219$ jours. Au départ, la règle de César ($p = 1$, $q = 4$) sort de la bande grisée en $128$ ans. Essayer $7$ et $29$, puis $8$ et $33$, puis $31$ et $128$. Quand l'écart dépasse $12$ jours, la courbe s'arrête.
Le même calcul en Python

Le programme applique l'algorithme d'Euclide à $\dfrac{1\,211}{5\,000}$, calcule les réduites par la récurrence ci-dessus et vérifie la relation $p_k\,q_{k-1} - p_{k-1}\,q_k = \pm 1$.

a, b = 1211, 5000 # 0,2422 = 1211 / 5000 quotients = [] x, y = a, b while x != 0: quotients.append(y // x) # division euclidienne de y par x x, y = y % x, x print("quotients :", quotients) p_av, p = 1, 0 # p(-1), p(0) q_av, q = 0, 1 # q(-1), q(0) for k in range(len(quotients)): ak = quotients[k] p_av, p = p, ak * p + p_av q_av, q = q, ak * q + q_av print(p, "/", q, " année moyenne :", round(365 + p / q, 6), " relation :", p * q_av - p_av * q)
Omar Khayyam et le calendrier jalali

Omar Khayyam (1048-1131), né à Nichapour en Perse, est d'abord un savant : astronome, mathématicien et philosophe. Son Traité d'algèbre classe les équations du troisième degré et en donne des solutions géométriques, par l'intersection de deux coniques (par exemple un cercle et une parabole). Il est aussi l'auteur présumé de quatrains, les Rubaïyat, devenus célèbres en Europe au XIXe siècle.

Statue d'Omar Khayyam assis, dans un pavillon à colonnes Statue d'Omar Khayyam dans le pavillon des savants persans, au Centre international de Vienne (Nations unies). Photo : Yamaha5, Wikimedia Commons, licence CC BY-SA 3.0.

Vers 1074, le sultan seldjoukide Malik-Shah l'appelle à Ispahan pour diriger un observatoire et réformer le calendrier. Le calendrier jalali, adopté en 1079, fait commencer l'année à l'équinoxe de printemps (le Nowruz, nouvel an persan). La tradition lui attribue un cycle de $33$ ans comptant $8$ années bissextiles, soit exactement la réduite $\dfrac{8}{33}$ ; les historiens discutent cette attribution, car le calendrier se réglait aussi sur l'observation de l'équinoxe. Le calendrier officiel de l'Iran actuel en descend directement.

Avec $\dfrac{8}{33}$, l'année moyenne vaut $365 + \dfrac{8}{33} \approx 365{,}24242$ jours, plus proche de l'année tropique que l'année grégorienne de $365{,}2425$ jours, cinq siècles avant Grégoire XIII.

Le cycle de Méton et la date de Pâques

Pâques est fêtée le dimanche qui suit la première pleine lune de printemps, c'est-à-dire la première pleine lune qui tombe le 21 mars ou après (dans la version ecclésiastique de la règle, avec une lune et un équinoxe calculés, et non observés). La date dépend donc à la fois du Soleil, de la Lune et de la semaine.

Dix-neuf ans, deux cent trente-cinq lunaisons

Vers 432 av. J.-C., l'astronome athénien Méton remarque que $19$ années durent presque exactement $235$ lunaisons. Vérifions-le :

$$19 \times 365{,}2422 \approx 6\,939{,}60 \text{ jours,}$$ $$235 \times 29{,}5306 \approx 6\,939{,}69 \text{ jours.}$$

L'écart n'est que d'environ $0{,}09$ jour, soit deux heures en dix-neuf ans. Au bout de $19$ ans, les phases de la Lune reviennent donc presque aux mêmes dates. Le rang d'une année dans ce cycle est le reste de la division euclidienne du millésime par $19$ : les calculateurs du Moyen Âge l'appelaient le nombre d'or (sans rapport avec le nombre d'or des géomètres). Pour 2026, $2\,026 = 19 \times 106 + 12$ ; comme on numérote les années du cycle de $1$ à $19$, le nombre d'or de 2026 est $12 + 1 = 13$.

Calculer Pâques avec des divisions euclidiennes

Gauss a donné en 1800 une méthode de calcul de la date de Pâques par une suite de restes de divisions euclidiennes. Le programme suivant utilise une variante publiée par l'astronome Jean Meeus, valable pour tout le calendrier grégorien. Chaque ligne est une division euclidienne : a = annee % 19 est la place dans le cycle de Méton, les variables suivantes corrigent les années séculaires (règle grégorienne) et la dérive du cycle lunaire, puis l cherche le dimanche.

def paques(annee): a = annee % 19 # place dans le cycle de Méton b, c = annee // 100, annee % 100 d, e = b // 4, b % 4 f = (b + 8) // 25 g = (b - f + 1) // 3 h = (19 * a + b - d - g + 15) % 30 # âge de la Lune i, k = c // 4, c % 4 l = (32 + 2 * e + 2 * i - h - k) % 7 # recherche du dimanche m = (a + 11 * h + 22 * l) // 451 mois = (h + l - 7 * m + 114) // 31 jour = (h + l - 7 * m + 114) % 31 + 1 return jour, mois for an in [2024, 2025, 2026, 2027, 2028]: j, mo = paques(an) print(an, ":", j, "mars" if mo == 3 else "avril") # dates extrêmes entre 1900 et 2100 dates = [paques(an) for an in range(1900, 2101)] plus_tot = min(dates, key=lambda x: (x[1], x[0])) plus_tard = max(dates, key=lambda x: (x[1], x[0])) print("plus tôt :", plus_tot, " plus tard :", plus_tard)

Le programme donne le 31 mars 2024, le 20 avril 2025, le 5 avril 2026, le 28 mars 2027. Pâques tombe toujours entre le 22 mars (comme en 1818, et la prochaine fois en 2285) et le 25 avril (comme en 1943 et en 2038). Entre 1900 et 2100, la date la plus précoce est le 23 mars, atteinte en 1913 et en 2008, comme le montre le programme.

Quel jour de la semaine ?

La semaine de sept jours ne s'accorde ni avec le mois ni avec l'année : c'est un problème de congruences modulo $7$.

D'une année à l'autre

La division euclidienne de $365$ par $7$ donne $365 = 7 \times 52 + 1$, donc $365 \equiv 1 \pmod 7$ et $366 \equiv 2 \pmod 7$. Une même date avance donc d'un jour de la semaine d'une année sur l'autre, et de deux jours si un 29 février se trouve entre les deux.

Exemple. Le 13 octobre 2026 est un mardi. Le 13 octobre 2027 est un mercredi (pas de 29 février entre les deux), et le 13 octobre 2028 un vendredi (le 29 février 2028 ajoute un jour).

La congruence de Zeller

En 1882, le pasteur allemand Christian Zeller a rassemblé ces décalages en une seule formule. On numérote les mois en commençant en mars : mars est le mois $m = 3$, décembre le mois $12$, et janvier et février deviennent les mois $13$ et $14$ de l'année précédente. Avec $q$ le jour du mois, $K$ les deux derniers chiffres de l'année et $J$ le nombre de siècles ($J = 17$ pour 1789), le jour de la semaine est le reste $h$ de

$$\begin{aligned} h \equiv{} & q + \left\lfloor \tfrac{13(m+1)}{5} \right\rfloor + K + \left\lfloor \tfrac{K}{4} \right\rfloor \\ & + \left\lfloor \tfrac{J}{4} \right\rfloor + 5J \pmod 7, \end{aligned}$$

où $\lfloor x \rfloor$ désigne la partie entière, et où $h = 0$ correspond à samedi, $h = 1$ à dimanche, $h = 2$ à lundi, et ainsi de suite.

Exemple à la main : le 14 juillet 1789. On a $q = 14$, $m = 7$, $K = 89$, $J = 17$. Les termes valent $\lfloor 104/5 \rfloor = 20$, $\lfloor 89/4 \rfloor = 22$, $\lfloor 17/4 \rfloor = 4$ et $5 \times 17 = 85$. La somme est

$$\begin{aligned} & 14 + 20 + 89 + 22 + 4 + 85 \\ &= 234 = 7 \times 33 + 3, \end{aligned}$$

donc $h = 3$ : la Bastille a été prise un mardi.

D'où viennent les termes de la formule (démonstration partielle)

Les années du siècle. Chaque année ajoute un jour ($365 \equiv 1$), d'où le terme $K$ ; chaque année bissextile du siècle en ajoute un autre, et il y en a $\lfloor K/4 \rfloor$.

Les siècles. Un siècle dont la dernière année n'est pas bissextile compte $100$ ans dont $24$ bissextiles, soit un décalage de $100 + 24 = 124$ jours, et $124 = 7 \times 17 + 5$, donc $124 \equiv 5 \pmod 7$ : c'est le terme $5J$. Une année séculaire sur quatre est tout de même bissextile : c'est le terme $\lfloor J/4 \rfloor$.

Les mois. Le terme $\lfloor 13(m+1)/5 \rfloor$ vaut $10$, $13$, $15$, $18$, $20$, $23$, $26$, $28$, $31$, $33$, $36$, $39$ pour $m = 3, 4, \ldots, 14$. Ses accroissements successifs sont $3$, $2$, $3$, $2$, $3$, $3$, $2$, $3$, $2$, $3$, $3$. Or les mois de mars à janvier ont $31$, $30$, $31$, $30$, $31$, $31$, $30$, $31$, $30$, $31$, $31$ jours, et $31 \equiv 3$, $30 \equiv 2 \pmod 7$ : le terme ajoute exactement le décalage dû à chaque mois écoulé. En plaçant février à la fin de l'année, son éventuel 29e jour n'intervient qu'au changement d'année, déjà compté par le terme $\lfloor K/4 \rfloor$.

Il reste à vérifier la constante d'ajustement sur une date connue, ce que fait l'exemple du 14 juillet 1789.

Cet outil applique la formule de Zeller et affiche les étapes du calcul. Il est valable dans le calendrier grégorien, donc pour les dates postérieures à 1582 (et, en Russie par exemple, seulement après 1918).

Le vendredi 13 est-il rare ?

Comme le calendrier se répète tous les $400$ ans, il suffit de compter les $400 \times 12 = 4\,800$ treizièmes jours d'un cycle. On s'attendrait à environ $4\,800 / 7 \approx 685{,}7$ par jour de la semaine. Le calcul montre que le 13 tombe un vendredi $688$ fois, un peu plus souvent qu'aucun autre jour : les sept jours ne sont pas équiprobables, parce que $400$ ans ne contiennent pas un nombre de mois multiple de $7$ et que la règle des bissextiles n'est pas régulière.

noms = ["samedi", "dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi"] def zeller(q, m, annee): if m < 3: # janvier et février : mois 13 et 14 m = m + 12 annee = annee - 1 K, J = annee % 100, annee // 100 return (q + 13 * (m + 1) // 5 + K + K // 4 + J // 4 + 5 * J) % 7 print("14 juillet 1789 :", noms[zeller(14, 7, 1789)]) print("15 octobre 1582 :", noms[zeller(15, 10, 1582)]) compte = [0] * 7 for annee in range(2001, 2401): # un cycle complet de 400 ans for mois in range(1, 13): compte[zeller(13, mois, annee)] += 1 for h in range(7): print("le 13 tombe un", noms[h], ":", compte[h], "fois")
Le calendrier républicain

En 1793, la Convention veut rompre avec le calendrier chrétien et rendre le temps « rationnel », comme le système métrique rend les mesures décimales. Le calendrier républicain, préparé notamment par le mathématicien Gilbert Romme avec l'aide d'astronomes comme Lalande, fait commencer l'an I le 22 septembre 1792, jour de la proclamation de la République et de l'équinoxe d'automne.

Estampe allégorique du calendrier républicain de l'an II, avec les douze mois disposés autour d'un motif central Calendrier républicain de l'an II, estampe de Philibert-Louis Debucourt. Bibliothèque nationale de France, Wikimedia Commons, domaine public.

Le point faible était justement la règle des années sextiles : elle devait suivre l'équinoxe d'automne observé, ce qui rendait le calendrier difficile à prévoir, et une règle arithmétique proche de la règle grégorienne, proposée par Romme, n'a jamais été adoptée. La semaine de dix jours fut aussi mal acceptée. Napoléon rétablit le calendrier grégorien au 1er janvier 1806. Les noms sont restés dans l'histoire : le « 9 thermidor » (chute de Robespierre), le « 18 brumaire » (coup d'État de Bonaparte), ou le roman Germinal.

Des directions pour construire sa question

Ce texte n'est pas un Grand Oral. Il rassemble des connaissances dans lesquelles chacun peut choisir une direction, la creuser et formuler sa propre question. Quelques directions possibles :

Pour l'échange avec le jury : les notions du cours à maîtriser

Le jury peut interroger sur les chapitres mobilisés. Avec ce thème, il est utile de connaître parfaitement, en maths expertes : la division euclidienne et les congruences, le PGCD et l'algorithme d'Euclide, le théorème de Bézout et sa réciproque. Côté spécialité, le raisonnement par récurrence, les suites définies par récurrence et l'algorithmique en Python sont souvent sollicités.

Pour réviser les chapitres de spécialité, l'application Maths FlashBac reprend tout le cours en cartes.

Pour aller plus loin