vuoi
o PayPal
tutte le volte che vuoi
Il problema del
giorno della
settimana
Qual è il giorno della settimana che corrisponde a una certa
data? Questo è un piccolo problema che, nella vita di tutti i
giorni, capita spesso di dover risolvere. In genere ci si affida a
una agenda, cartacea o elettronica che sia, ma la questione può
essere risolta con i semplici calcoli descritti di seguito:
• si prenda in considerazione una data, per esempio 12/01/1998;
• si chiami il valore dell’anno ed il valore del mese
Y M
diminuito di 2, nel nostro esempio = 1998 ed = 1 – 2 = –1;
Y M
• se <= 2 si sottragga 1 da e si aggiunga 12 a
M Y M,
nel nostro esempio = 1998 – 1 = 1997 ed = –1 + 12 = 11
Y M
Per le date del calendario giuliano (in vigore fino al 4 ottobre 1582) si
procede come indicato di seguito (INT(…) indica la sola parte intera
dell’espressione tra parentesi):
D = 5 + giorno + Y + : 4) + (31 × M : 12)
INT(Y INT
Per le date del calendario gregoriano (il nostro calendario in vigore dal
15 ottobre 1582) si procede invece nel modo seguente:
D = giorno + Y + : 4) – : 100) + : 400) + ×M : 12)
INT(Y INT(Y INT(Y INT(31
Nel nostro esempio:
D = 12 + 1997 + 499 – 19 + 4 + 28 = 2521
In entrambi i casi si divide per 7 e si prende il resto di tale
D
divisione: se il valore ottenuto è 0 il giorno è domenica, se 1 è lunedì, se
2 è martedì e così via. Nel nostro esempio:
ovvero lunedì
2521 – : 7) × 7 = 2521 – 2520 = 1
INT(2521