Page 1 of 1

calculs calendaires utilitaires.

Unread postPosted: 28 Nov 2019, 17:57
by ggauny@live.fr
Bonsoir,

Il est parfois utile de connaître le nombre de jours d'un mois considéré.

Cette façon de faire évite de recourir à des listes liant mois et nombre de jour : (merci Dieter)

-- Pour tous les mois, SAUF FEVRIER on peut utiliser cela :

njours = 30 + (m + m div 8) mod 2. //div signifie "division entière"//

--Pour février, l'on doit déterminer si l'année est bissextile ou non :

on peut additionner les "SIGN" de l'année considérée MOD(ulo) {4, 100, 400} :

njours = 29 - [sign(année mod 4) + sign(année mod 100) + sign(année mod 400)] mod 2

Et si :
njours = 0: les 3 conditions s'appliquent, année bissextile
njours = 1: une condition est fausse. Sûrement la division par 400, année commune
njours = 2: deux conditions sont fausses. Sûrement les divisions par 400 et 100 année bissextile
njours = 3: les trois conditions sont fausses, année commune

Ainsi si njours est impair : l'année est commune et si njours est pair : l'année est bissextile.

Bonne soirée.
(Edité pour faute de frappe).
:p