Berekening dag van de week

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken

De dag van de week kan berekend worden door middel van een mathematisch algoritme. Een typische toepassing van deze berekening is om de dag uit te rekenen waarop men geboren is of waarop een belangrijke gebeurtenis plaats vond.

Introductie[bewerken]

De basis van bijna alle algoritmes om de dag van de week te berekenen is:

  1. elke dag van de week krijgt een nummer van 0 tot 6, zodat dan door het toepassen van modulus 7 (mod) om het aantal dagen toe te voegen sinds een bekende start van een periode
  2. opzoeken of berekenen op welke dag een bepaalde eeuw is begonnen
  3. opzoeken of berekenen op welke dag een jaar in deze eeuw is begonnen
  4. opzoeken of berekenen op welke dag een maand in dit jaar is begonnen
  5. optellen van de dag van de maand, namelijk de dagen sinds de maand is begonnen.

Modulus betekent de rest na deling van een deeltal door een deler. In het geval van modulus 7 kan 7 of 14 of 21 enzovoort als 0 worden gezien, 8 of 15 of 22 als 1, 9 als 2, 18 als 4 enzovoort. Stel dat zondag dag 0 is, dan is de volgende zondag (dag 7) en de daarop volgende zondag (dag 14) ook 0 (nul). Donderdag krijgt dan het getal 4.

Een berekening[bewerken]

Achtereenvolgens tellen we op:

1) De dag van de maand.

2) Het maandgetal, zie volgende tabel:

Jan Feb Maa Apr Mei Jun Jul Aug Sep Okt Nov Dec
0 3 3 6 1 4 6 2 5 0 3 5

Januari begint met 0 en heeft 31 dagen, 31 mod 7 = 3, daarom heeft februari 3 + 0 = 3.
Februari heeft 28 dagen, 28 mod 7 = 0, dus maart begint met 3 + 0 = 3.
Maart heeft 31 dagen, 31 mod 7 = 3, dus april begint met 3 + 3 = 6.
April heeft 30 dagen, 30 mod 7 = 2, dus mei zou beginnen met 6 + 2 = 8, echter 8 mod 7 =1, dus mei begint met 1.
Enzovoort.

3) Het jaargetal: Men neemt het jaargetal zonder de eeuwaanduiding en berekent deze ook met mod 7. Hierbij telt men het aantal schrikkeljaren in deze eeuw op.

Een jaar heeft 365 dagen, 365 mod 7 = 1. In elk volgend jaar komt er 1 bij, en in een schrikkeljaar 1 extra.

Getal 0 1 2 3 5 6 0 1 3 4 5 6 1 2 3 4 6 0 1 2 4 5 6 0 2 3 4 5
Jaar 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
Jaar 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
Jaar 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
Jaar 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

Er wordt telkens 1 erbij geteld, behalve in het schrikkeljaar, dan komt er 2 bij. Bij het getal 7 wordt vanwege mod 7 weer 0 geschreven.

Deze cyclus herhaalt zich elke 28 jaar. 1928 is dus, wat het het jaargetal betreft, gelijk aan 1956 en 1984.

4) het eeuwgetal: Het eeuwgetal voor de gregoriaanse kalender is:

  • 0 voor alle eeuwen die met 15.., 19.., 23.. beginnen
  • 6 voor alle eeuwen die met 16.., 20.., 24.. beginnen
  • 4 voor alle eeuwen die met 17.., 21.., 25.. beginnen
  • 2 voor alle eeuwen die met 18.., 22.., 26.. beginnen

De cyclus van 400 jaren in de kalender heeft 146.097 dagen en dat is door 7 deelbaar (146.097 mod 7 = 0). De weekdagen herhalen zich dus ook alle 400 jaar. Het jaar 2006 heeft dus dezelfde weekdagen als het jaar 1606 en 1206, maar ook 2406.

Voor de juliaanse kalender is het eeuwgetal (25-nn) mod 7.

5) Correctie voor het schrikkeljaar. De berekening klopt voor de dagen vanaf 1 maart. Als de datum in februari of januari van het schrikkeljaar valt, dan dient 1 van het getal te worden afgetrokken.

Het resultaat van de berekening modulo 7 levert de weekdag:

0 1 2 3 4 5 6
zo ma di wo do vr za

Voorbeelden[bewerken]

De bestorming van de Bastille: 14 juli 1789

  1. dag 14
  2. juli geeft met de maandtabel het getal 6
  3. ..89 geeft met de jaartabel het getal 6
  4. 17.. geeft met de eeuwtabel het getal 4
  5. geen correctie voor een schrikkeljaar, dus 0

Dus (14+6+6+4+0) mod 7 = 30 mod 7 = 2. Deze gebeurtenis vond op een dinsdag plaats.

Bevrijdingsdag in Nederland 5 mei 1945

  1. dag 5
  2. mei geeft 1
  3. ..45 geeft 0
  4. 19.. geeft 0
  5. geen schrikkeljaarcorrectie: 0

(5+1+0+0+0) mod 7 = 6. Deze gebeurtenis vond plaats op een zaterdag.

Leopold wordt de eerste koning der Belgen op 26 juni 1831

  1. dag 26
  2. juni geeft 4
  3. ..31 geeft 3
  4. 18.. geeft 2
  5. geen schrikkeljaarcorrectie: 0

(26+4+3+2+0) mod 7 = 35 mod 7 = 0. Deze gebeurtenis vond plaats op een zondag.

Doomsdayregel[bewerken]

Binnen één jaar vallen 4/4, 6/6, 8/8, 10/10, 12/12, 5/9, 9/5, 7/11, 11/7 en de laatste dag van februari altijd op dezelfde dag van de week (de "Doomsday" van het betreffende jaar; 2014: vrijdag). Als men de Doomsday voor bijvoorbeeld het huidige jaar onthoudt kan men daaruit voor een willekeurige datum in hetzelfde jaar de dag van de week bepalen. Voor een ander jaar kan men de Doomsday bepalen doordat hij, net als boven bij het jaargetal, elk jaar één dag later is, behalve in een schrikkeljaar, dan is hij twee dagen later. In de periode 1900 - 2099 herhaalt de serie zich elke 28 jaar. Men kan daarin ook met stappen van 4 jaar rekenen, daarbij gaat men steeds twee dagen terug (en bij een stap van 12 jaar dus een dag vooruit).