L’horloge astronomique, à Prague.
2016 était une année bissextile et 2020 le sera aussi : février a 29 jours au lieu de 28. Vous pensez que ça a lieu tous les quatre ans ? Et bien détrompez-vous, car c’est un petit peu plus compliqué que ça !

Pourquoi les années bissextiles ?

Les années bissextiles sont là parce que l’année « tropique » ne dure pas un nombre entier de jours. Chaque année civile, on accumule donc une fraction de jour qu’il faut rattraper à un moment.
Avec le calendrier actuel — le calendrier grégorien — cette journée supplémentaire est placée le 29 février et on y a droit presque tous les 4 ans.

Oui : presque !
Car certaines années qui devraient être bissextiles ne le sont pas.
Encore mieux, certaines de ces années qui devraient l’être mais en fait ne le sont pas, le sont en fin de compte quand-même !

Les savants de l’antiquité l’avaient remarqué : entre chaque solstice d’été, il s’écoulait 365 jours entiers, plus environ 6 heures.
Un calendrier qui durerait seulement 365 jours serait donc décalé d’un jour tous les 4 ans. Ceci n’est pas acceptable : une date quelconque finirait par se déplacer au sein des saisons, ce qui retirait tout intérêt à avoir un calendrier…

Jules César imposa à l’époque le calendrier julien, qui plaça une journée intercalaire tous les 4 ans. Ces années, bissextiles, comportent donc 366 jours au lieu de 365 (d’où leur nom).
Le calendrier julien considérait donc que chaque année tropique mesurait 365,25 jours.

Le problème c’était qu’une année tropique ne dure pas exactement 365,25 jours et laissait encore passer un petit décalage.
Arrivé au Moyen-Âge quinze siècles plus tard, ce petit décalage résiduel s’était accumulé et représentait désormais une dizaine jours. À cette époque, il n’y avait pas César mais il y avait l’Église : pour elle, ce décalage était inacceptable : la date de Pâques et les autres fêtes liturgiques, calquée sur les mois lunaires durant l’équinoxe de printemps, arrivaient de plus en plus tardivement dans l’année calendaire.

Le Pape Grégoire XIII décida qu’il fallait faire quelque chose. Sa solution : réformer le calendrier. Les savants qui l’entouraient avait mis au point un calendrier beaucoup plus précis, avec des ajustements en plus des années bissextiles instaurées par César. Le nouveau calendrier grégorien fut instauré en 1582 et on décida du même coup de supprimer le décalage de la dizaine de jour : le 4 octobre 1582 fut donc suivi par le 15 octobre 1582.

Aujourd’hui, c’est encore le calendrier grégorien que l’on utilise.

Comment calculer les années bissextiles ?

2020 sera une année bissextile. 2016, 2008 ou encore l’an 2000 l’étaient aussi. Ces années sont toutes des entiers divisibles par 4.

Ensuite, et c’est là que le calendrier grégorien modifie des choses par rapport au calendrier julien, on retire un jour par siècle : la première année bissextile d’un siècle est supprimée. Cela correspond aux années centennales : 1800, 1900, 2000 ou 2100 sont des années centennales qui ne seront pas bissextiles.

Sauf que… La correction apportée la seconde règle est un peu trop importante. On décréta alors qu’une années centennales non-bissextile sur quatre devraient redevenir bissextile ! Les années 1600, 2000, 2400 ou 2800 sont ou seront donc bissextiles.
L’an 2000 par exemple : elle était bissextile uniquement grâce à cette troisième règle, et c’était seulement la deuxième de l’histoire à l’être !

On a donc trois règles à appliquer :

  • la première règle : l’année doit être divisible par 4 ;
  • la seconde règle (prioritaire sur la 1ère) : l’année ne doit pas être divisible par 100 ;
  • la troisième règle (prioritaire sur la 2ème) : l’année doit être divisible par 400.

Mathématiquement, tous ces choix (4, 100 et 400) peuvent se voir grâce à la définition de l’année grégorienne, prise à 365,2425 jours :

$$365,2425\text{ j} = 365\text{ j} + \frac{1}{4}\text{ j} - \frac{1}{100}\text{ j} + \frac{1}{400}\text{ j}$$

Pour conclure, notons que le calendrier grégorien — bien qu’il soit beaucoup plus fidèle à la réalité que le calendrier julien — n’est pas parfait : l’année du calendrier grégorien dure 365,2425 jours en moyenne ; or, l’année tropique réelle dure 365,24219 jours. La différence représente un excès de 3 jours tous les 10 000 ans.
Il a été proposé d’ajouter une 4ème règle : que les années multiples de 4 000 ne soient pas bissextiles, mais il n’est pas dit que l’on en arrive là : en effet, les fluctuations dans l’année tropique (−0,5 s par siècle) et dans le jour solaire (+1,64 ms par siècle) pourraient bien finir par compenser le décalage de façon naturelle.

Enfin, pour vous amuser, j’ai bricolé un petit code pour savoir si une année est bissextile. vous pouvez l’essayer sur cette page.

image de Michel

8 commentaires

gravatar
Tokapix écrit :
Bonjour Timo,

Merci beaucoup pour cet article instructif!

Ça m'a donné envie d'aller regarder dans le calendrier système et effectivement, les années bissextiles semblent correctement prises en compte par rapport à ce que tu décrivais :
$ ncal 2 2200 # pas bissextile même si 2200 % 4 == 0
February 2200
Su 2 9 16 23
Mo 3 10 17 24
Tu 4 11 18 25
We 5 12 19 26
Th 6 13 20 27
Fr 7 14 21 28
Sa 1 8 15 22

$ ncal 2 2204 # bissextile
February 2204
Su 5 12 19 26
Mo 6 13 20 27
Tu 7 14 21 28
We 1 8 15 22 29
Th 2 9 16 23
Fr 3 10 17 24
Sa 4 11 18 25

$ ncal 2 2400 # bissextile (exception de l'exception)
February 2400
Su 6 13 20 27
Mo 7 14 21 28
Tu 1 8 15 22 29
We 2 9 16 23
Th 3 10 17 24
Fr 4 11 18 25
Sa 5 12 19 26


En grattant un peu dans les arcanes de ncal, tous les pays qui sont passés au calendrier grégorien ne l'on pas fait au même moment. La transition mentionnée dans l'article est la première, appliqué par le Pape Grégoire pour l'Espagne et l'Italie. Le temps que les coursiers transmettent l'information j'imagine, le Luxembourg ou la France l'ont appliqué deux mois plus tard. Plus récemment, des pays comme le Japon, la Grèce ou la Turquie, auraient appliqué ce calendrier au début du XXème siècle. Le calendrier Unix par défaut est celui Anglo-Saxon, appliqué en septembre 1752, presque deux siècles plus tard :
$ ncal -s IT 10 1582 # Calendrier Italien
October 1582
Su 17 24 31
Mo 1 18 25
Tu 2 19 26
We 3 20 27
Th 4 21 28
Fr 15 22 29
Sa 16 23 30

$ ncal -s FR 12 1582 # Calendrier Français
December 1582
Su 2 9 26
Mo 3 20 27
Tu 4 21 28
We 5 22 29
Th 6 23 30
Fr 7 24 31
Sa 1 8 25

$ ncal 9 1752 # Calendrier Anglo-Saxon, utilisé par défaut
September 1752
Su 17 24
Mo 18 25
Tu 1 19 26
We 2 20 27
Th 14 21 28
Fr 15 22 29
Sa 16 23 30

$ ncal -p # fournit la liste des pays pris en compte et des dates d'application


Les gens de AT&T, Sun et Berkeley ont dû bien s'amuser en programmant ncal, je ne sais pas si on peut en dire autant des historiens, qui doivent faire de leur mieux pour dater leurs documents sans se tromper de calendrier.

Pour référence, la commande ncal utilisée provient du paquet Debian bsdmainutils, version 9.0.6+b1.

À plus

Note : j'espère que les espaces passent bien dans les calendriers sinon je risque d'être encore plus fouillis que je ne le suis déjà.  :-)
gravatar
Le Hollandais Volant écrit :
@Tokapix : Oui, tous les pays ont choisit leur transition quand ça les arrangeait. J’ignorais en revanche que ncal implémentait tout ça…
La France par exemple, lors de la révolution avait son propre système calendaire : le calendrier républicain. En 1798 il a été décrété qu’ils servaient en l’an I. Ils avaient également changé le nom des mois et des jours, et s’étaient fixé des jours de 10 heures de 100 minutes de 100 secondes. Tout ceci était tout sauf pratique, et ils sont revenu au calendrier grégorien, qui était alors utilisé presque partout dans le monde.

Pour les historiens, je ne sais pas, mais je sais qu’en astronomie, on se réfèrent encore parfois au calendrier julien pour les dates sur les autres planètes, c’est le cas par exemple pour Mars, qui dispose d’un calendrier à lui (prenant son début à l’an 2000 terrestre dans le calendrier julien, soit le jour « epoch J2000 »).
Je m’en suis aperçu en faisant cette page : http://lehollandaisvolant.net/tout/tools/planets-time/
gravatar
Tokapix écrit :
@Le Hollandais Volant :
Oui, tous les pays ont choisit leur transition quand ça les arrangeait. J’ignorais en revanche que ncal implémentait tout ça…

À dire vrai c'est bien caché, la commande plus courante (et Historique) pour l'affichage horizontal des calendriers : cal, ne gère pas la localisation aussi finement. Le passage au calendrier grégorien est tout de même présent, localisé pour les États-Unis et la Grande Bretagne :
$ cal 9 1752
   September 1752
Su Mo Tu We Th Fr Sa
       1  2 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

D'après la section Histoire de la page de manuel, ça pourrait venir d'un besoin de rétrocompatiblité avec les scripts basés sur cal, bien que ce détail ne soit pas explicité comme tel :
The ncal command appeared in FreeBSD 2.2.6. The output of the cal command is supposed to be bit for bit compatible to the original Unix cal command, because its output is processed by other programs like CGI scripts, that should not be broken.


Concernant le calendrier républicain, il n'est pas implémenté dans le calendrier de BSD, mais j'ai déjà vu circuler des mails dont les citations sont datées sur ce calendrier : « Le 18 Pluviôse, an CCXXIV, untel a écrit : ». J'imagine donc que des outils doivent exister quelque part pour travailler avec ce calendrier. Attention typo : si j'en crois la page d'Encyclopédie Wikipédia, le calendrier démarre en 1791 et le décret a été décidé en 1792 pour les actes publiques.

Le calendrier julien est bien implémenté, via l'option -j. Sans faire d'astronomie, on peut toujours le garder sous le coude dans la catégorie Informatique Amusante :

$ ncal -j
    March 2016
Su    66 73 80 87
Mo    67 74 81 88
Tu 61 68 75 82 89
We 62 69 76 83 90
Th 63 70 77 84 91
Fr 64 71 78 85
Sa 65 72 79 86

Au passage, excellent boulot pour les calendriers planétaires! Les horaires accélérés pour Jupiter ou a rebours pour Uranus ont un effet saisissant!

À plus

Note: apparemment, je peux tricher avec les espaces insécables pour afficher proprement les calendriers.  :-)
Mille excuses pour la
pollution dans mon commentaire précédent.
gravatar
InternetBaby écrit :
L'an 2000 était bissextile bien qu'il n'aurait pas du l'être mais aurait du l'être quand même ! J'ai appris quelque chose ! Merci !
gravatar
ocaire écrit :

Super intéressant...une question: une année bissextile qui commence un samedi ( il y en a donc 5 sur le mois en 2020) ne se reproduit que 40 ans plus tard... pourquoi
Merci

gravatar
Le Hollandais Volant écrit :

@ocaire : Bonjour,
Dans l’article je parle seulement des années bissextiles, je ne parle pas du jour où tombe le 29 février.

Quoi qu’il en soit, il y a environ 1 chance sur 7 que l’année commence un samedi, et 1 chance sur 4 que ce soit une année bissextile. Donc en moyenne, une année sur 28 est bissextile et commence un samedi. Sachant que c’est une moyenne, il n’est pas anormal que 40 années séparent deux années comme ça.

gravatar
Alain écrit :

Pensons uniquement 2,6 versus 0,4,8 . Si le dernier chiffre d`un nombre est impair alors l`année bissextile ne se peut pas , Ex : 1971 . Donc il reste les chiffres pairs : Si c`est un 2 ou un 6 alors le chiffre qui le précède doit être impair: 19(12) , 19(32) , 19(56) , 19(96) sont bissextiles ! Pour les chiffres 0 ,4 et 8 ,au contraire , ils doivent être pairs ; 19(88) , 19(60 ) , 19(44) sont bissextiles . Un enfant s`y retrouverait !!!! Il ne reste plus que l`exception qui arrive 3 fois par 4 siècles à savoir les chiffres rond de siècle : 1600 , 1700 , 1800 ,1900 ,2000 ,2100 ,2200 ,2300 ,2400 ,2500 ,ect....Le système ci-haut ne fonctionne plus parce que deux zéros consécutifs se suivent donc il faut diviser par 4 donc 1600 se divise par 4 alors il est bissextile contrairement à 1700 ,1800 et 1900 . On a donc nos 3 exceptions par 4 siècles : 1600=oui / 1700,1800 et 1900=non . . . . . . .2000=oui / 2100 ,2200 et 2300 = non .. . .ect . . .


Votre commentaire sera visible après validation par le webmaster.