Algoritmus pro výpočet dne v týdnu
Z Wikipedie, otevřené encyklopedie
Vstupem algoritmu pro výpočet dne v týdnu je klasické datum v podobě den, měsíc a rok včetně století.
Pro vlastní výpočet je nejprve nutné určit několik koeficientů podle příslušných konverzních tabulek.
a <- prevodka_stoleti[ (ROK div 100) mod 4 ] b <- ROK mod 100 c <- b div 4 d <- prevodka_mesicu[MESIC]
Pokud se jedná o přestupný (rok dělitelný beze zbytku 4, ale nedělitelný beze zbytku 100) či superpřestupný rok (rok dělitelný beze zbytku 400), tak pro leden a únor musíme snížit koeficient d o 1.
DEN V TYDNU <- prevodka_dnu[ (a + b + c + d + DEN) mod 7 ]
Příslušné převodky:
prevodka_stoleti: 0 ⇒ 0, 1 ⇒ 5, 2 ⇒ 3, 3 ⇒ 1 prevodka_mesicu: 1 ⇒ 6, 2 ⇒ 2, 3 ⇒ 2, 4 ⇒ 5, 5 ⇒ 7, 6 ⇒ 3, 7 ⇒ 5, 8 ⇒ 1, 9 ⇒ 4, 10 ⇒ 6, 11 ⇒ 2, 12 ⇒ 4 prevodka_dni: 0 ⇒ pondeli, 1 ⇒ utery, 2 ⇒ streda, 3 ⇒ ctvrtek, 4 ⇒ patek, 5 ⇒ sobota, 6 ⇒ nedele
Algoritmus byl publikován v astronomické ročence v roce 1991.
Výše uvedená skica by chtěla přepsat do slov a vysvětlit, proč dochází k jednotlivým krokům výpočtu (ty převodky jsou příslušné tabulky publikované v ročence).

