Je suis à la recherche d'un algorithme qui calcule le premier jour d'un mois (pour savoir par exemple si le 1 février 2017 était un lundi, mardi, mercredi etc...)
J'ai cherché, et j'ai principalement trouvé des algorithmes en C ou C++, mais je ne comprends pas totalement ce langage... J'ai du moins réussi a trouver cet algorithme :
[spoiler=Algorithme]
Que j'ai traduit en skript : [spoiler=Algorithme]
function firstDayOfMonth(y: integer, m: integer) :: text:
set {_base} to ((14 - {_m}) / 12)
set {_annee} to ({_y} - {_base})
set {_mois} to ({_m} + (12 * {_base}) - 2)
set {_d} to floor((day + {_annee} + ({_annee} / 4) - ({_annee} / 100) + ({_annee} / 400) + ((31 * {_mois}) / 12)) mod 7)
if {_d} is 0:
set {_j} to "dimanche"
else if {_d} is 1:
set {_j} to "lundi"
else if {_d} is 2:
set {_j} to "mardi"
else if {_d} is 3:
set {_j} to "mercredi"
else if {_d} is 4:
set {_j} to "jeudi"
else if {_d} is 5:
set {_j} to "vendredi"
else if {_d} is 6:
set {_j} to "samedi"
return {_j}
Mais malheureusement il ne fonctionne pas tout le temps... (et je n'ai pas vérifié si il fonctionnait avec les années bissextiles...)
Donc si quelqu'un pouvait me le corriger ou m'en donner un qui fonctionne, je le prend à coeur-joie !
Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.
Question
noftaly
Salut à tous !
J'ai un peu besoin d'aide ^^
Je suis à la recherche d'un algorithme qui calcule le premier jour d'un mois (pour savoir par exemple si le 1 février 2017 était un lundi, mardi, mercredi etc...)
J'ai cherché, et j'ai principalement trouvé des algorithmes en C ou C++, mais je ne comprends pas totalement ce langage... J'ai du moins réussi a trouver cet algorithme :
[spoiler=Algorithme]
Que j'ai traduit en skript : [spoiler=Algorithme]
Mais malheureusement il ne fonctionne pas tout le temps... (et je n'ai pas vérifié si il fonctionnait avec les années bissextiles...)
Donc si quelqu'un pouvait me le corriger ou m'en donner un qui fonctionne, je le prend à coeur-joie !
Merci d'avance
23 réponses à cette question
Messages recommandés