Pour une date de la forme jour/mois/année où "jour" prend une valeur de 01 à 31, "mois" de 01 à 12 et "année" de 1583 à 9999, utiliser la formule :
c = (14 - mois)/12
En fait, c = 1 pour janvier et février, c = 0 pour les autres mois.
a = année - c
m = mois + 12*c - 2
j = ( jour + a + a/4 - a/100 + a/400 + (31*m)/12 ) mod 7
La réponse obtenue pour j correspond alors à un jour de la semaine suivant :
0 = dimanche, 1 = lundi, 2 = mardi, etc.
Remarques Modifier
Dans toutes les divisions "/", on ne garde que la partie entière du résultat. Par exemple, 35/4= 8.
Enfin, mod 7 signifie "modulo la division par 7", c'est-à-dire "le résultat est le reste de la division par 7".
(Par exemple, 23 mod 7 = 2, car le reste est 2.)
Exemple Modifier
Sur quel jour de la semaine tombe le 13 mars 2004 ?
On calcule c, a et m :
c = (14 - 3)/12 = 0, a = 2004 - 0 = 2004 et m = 3 + 12*0 - 2 = 1.
On trouve alors :
j = ( 13 + 2004 + 2004/4 - 2004/100 + 2004/400 + (31*1)/12 ) mod 7
j = ( 13 + 2004 + 501 - 20 + 5 + 2 ) mod 7
j = 2505 mod 7 = 6 (car 2505/7 = 357 et il reste 6.)
Donc le 13 mars 2004 était un samedi.
Copyright © 2024 ELIBRARY.TIPS - All rights reserved.
Lista de comentários
Pour une date de la forme jour/mois/année où "jour" prend une valeur de 01 à 31, "mois" de 01 à 12 et "année" de 1583 à 9999, utiliser la formule :
c = (14 - mois)/12
En fait, c = 1 pour janvier et février, c = 0 pour les autres mois.
a = année - c
m = mois + 12*c - 2
j = ( jour + a + a/4 - a/100 + a/400 + (31*m)/12 ) mod 7
La réponse obtenue pour j correspond alors à un jour de la semaine suivant :
0 = dimanche, 1 = lundi, 2 = mardi, etc.
Remarques Modifier
Dans toutes les divisions "/", on ne garde que la partie entière du résultat. Par exemple, 35/4= 8.
Enfin, mod 7 signifie "modulo la division par 7", c'est-à-dire "le résultat est le reste de la division par 7".
(Par exemple, 23 mod 7 = 2, car le reste est 2.)
Exemple Modifier
Sur quel jour de la semaine tombe le 13 mars 2004 ?
On calcule c, a et m :
c = (14 - 3)/12 = 0, a = 2004 - 0 = 2004 et m = 3 + 12*0 - 2 = 1.
On trouve alors :
j = ( 13 + 2004 + 2004/4 - 2004/100 + 2004/400 + (31*1)/12 ) mod 7
j = ( 13 + 2004 + 501 - 20 + 5 + 2 ) mod 7
j = 2505 mod 7 = 6 (car 2505/7 = 357 et il reste 6.)
Donc le 13 mars 2004 était un samedi.