Déterminer si une année est bissextile ou non
« Une année bissextile est une année divisible par 4. Une année est bissextile une fois sur 4. »
Ces deux affirmations sont bien ancrées dans la croyance populaire. Moi aussi, il y a peu, j’y croyais.
Pourtant… tout ceci est totalement faux. Le calendrier grégorien, en vigueur en France depuis 1532, indique qu’une année bissextile doit répondre à l’une de ces deux règles :
• Divisible par 400
• Divisible par 4 et non divisible par 100
Si vous faites le calcul, vous vous apercevrez que quasiment chaque année bissextile obéit à l’une de ces deux règles. Oui, quasiment : il y a effectivement des années divisibles par 4 qui n’obéissent à aucune de ces deux règles. Essayez avec 2100 par exemple : cette année est non divisible par 400, divisible par 4… mais divisible par 100. Il s’agit bel et bien d’une année non bissextile, alors que 2096 et 2104 seront des années bissextiles.
Évidemment, ça ne concerne que peu d’années : il y a en fait 97 années bissextiles en 4 siècles alors que la croyance populaire en compte 100. Mais dans certains domaines comme la généalogie, déterminer avec exactitude si une année est bissextile ou non peut avoir son importance.
Voici donc deux bouts de code en ASP et en PHP vous permettant de déterminer à coup sûr si une année est bissextile.
ASP :
function EstBissextile(annee) if annee mod 4 = 0 and annee mod 100 <> 0 or annee mod 400 = 0 then EstBissextile = true else EstBissextile = false end if end function
PHP :
function EstBissextile($annee) { if($annee%4 == 0 and $annee%100 != 0 or $annee%400 == 0) { $bissextile = true; } else { $bissextile = false; } return $bissextile; }
Pour plus d’informations sur les années bissextiles, je vous recommande vivement la lecture de l’article Wikipédia à ce sujet.
