Accéder au contenu principal

Calculer la date de Pâques pour n’importe quelle année

Établie au concile de Nicée en 325, la date officielle du dimanche de Pâques sert de référence pour fixer les dates de plusieurs jours fériés. En France, il y a le lundi de Pâques (i.e. le lendemain), le jeudi de l’Ascension (39 jours après) et le lundi de Pentecôte (50 jours après) ; aux États-Unis, le Good Friday tombe le vendredi qui précède le dimanche de Pâques (soit deux jours avant). Problème : calculer la date de Pâques est affreusement compliqué.

Fort heureusement, quelques brillants esprits s'y sont collés avant nous et nous ont livré des algorithmes capables de déterminer cette date précisément, sans avoir recours aux redoutables méthodes canoniques que je vous laisse découvrir par vos propres moyens. Je vous propose ci-dessous la méthode dite de Butcher [1] codée sous R : elle permet, pour n’importe quelle année, de trouver la date du dimanche de Pâques dans le calendrier Grégorien.

EasterSunday = function(year) {
 a <- year%%19
 b <- floor(year/100)
 c <- year%%100
 d <- (19*a+b-floor(b/4)-floor((b-floor((b+8)/25)+1)/3)+15)%%30
 e <- (32+2*(b%%4)+2*floor(c/4)-d-c%%4)%%7
 f <- floor((a+11*d+22*e)/451)
 month <- floor((d+e-7*f+114)/31)
 day <- (d+e-7*f+114)%%31+1
 Date(year, month, day)
}

Notez que la fonction Date utilisée ci-dessus est aussi de moi. Voici le code :

Date = function(year, month, day) {
 m <- formatC(month, width = 2, flag = "0")
 d <- formatC(day, width = 2, flag = "0")
 as.Date(paste(year, m, d, sep = "-"))
}

Vous pouvez ainsi vérifier que :

> EasterSunday(2017)
[1] "2017-04-16"
>

Elle fonctionne aussi avec des vecteurs :

> EasterSunday(1515:1518)
[1] "1515-04-11" "1516-04-02" "1517-04-22" "1518-04-07"
> 

For English-speaking readers: this is an R function to compute the date of Easter Sunday in the Gregorian calendar for any given year using Butcher’s algorithm.

---
[1] Cet algorithme a été publié en 1876 par un auteur inconnu dans Nature ; C'est donc Samuel Butcher, évêque de Meath qui a démontré qu’elle est exacte en 1877, qui lui donne son nom.

Commentaires

Posts les plus consultés de ce blog

Brandolini’s law

Over the last few weeks, this picture has been circulating on the Internet. According to RationalWiki, that sentence must be attributed to Alberto Brandolini, an Italian independent software development consultant [1]. I’ve checked with Alberto and, unless someone else claims paternity of this absolutely brilliant statement, it seems that he actually is the original author. Here is what seems to be the very first appearance of what must, from now on, be known as the Brandolini’s law (or, as Alberto suggests, the Bullshit Asymmetry Principle):The bullshit asimmetry: the amount of energy needed to refute bullshit is an order of magnitude bigger than to produce it.— ziobrando (@ziobrando) 11 Janvier 2013To be sure, a number of people have made similar statements. Ironically, it seems that the “a lie can travel halfway around the world while the truth is still putting on its shoes” quote isn’t from Mark Twain but a slightly modified version of Charles Spurgeon’s “a lie will go round the w…

Le marché des actions US est-il si cher que ça ?

Avec un Price-to-Earnings Ratio (cours sur bénéfices nets) désormais nettement supérieur à 20, le marché des actions américaines apparaît désormais très cher et même, selon nombre de commentateurs, trop chers. Cela fait plusieurs mois que le mot en B (« bulle ») a été prononcé [1] et force est de reconnaître que, sur la seule base de ce ratio, c’est effectivement le cas. Néanmoins, un rapide retour sur la théorie de la valorisation donne un éclairage tout à fait différent.Si le PER est un ratio très couramment utilisé sur les marchés, les chercheurs qui s’intéressent à la valorisation des actions utilisent plus volontiers son inverse : le Earnings Yield. En notant $E$ le niveau actuel des bénéfices nets et $P$ le prix du marché, le Earnings Yield s’écrit simplement : $$\frac{E}{P} $$ C’est donc la même mesure mais exprimée sous forme de taux plutôt que de ratio. Si nous utilisons plus volontiers cette présentation c’est que, contrairement au PER, elle a une signification très précis…

M. le Président, construisons l’Étoile de la Mort

Attendu qu’il est désormais acquis que l’État doit augmenter massivement la dépense publique pour relancer la croissance (i.e. politique de croissance) et qu’un déficit budgétaire inférieur à 10% du Produit intérieur brut est une politique d’austérité ;Attendu qu’il est également acquis que les seules solutions raisonnables à un endettement public insoutenable sont (i) encore plus de dette et/ou (ii) le financement de la dépense publique par la création monétaire ;Attendu, enfin, que nous entrons dans une nouvelle ère, que le paradigme a changé, que les lignes ont bougé, qu’il faut désormais raisonner hors du cadre et que, de toute manière, si on ne peut pas les battre, autant se joindre à eux ;Attendu ce qui précède, donc, je me fais fort de participer, avec mes faibles moyens, au redressement productif national, à la relance de la croissance durable et à la réindustrialisation de la France en relayant ici le plan initialement élaboré par Tyler Durden (Zero Hedge) en février 2012. Po…