Calendario perpetuo mentale

synodic_month-diario_artefattuale_calendario.jpgChe giorno della settimana era il 27/5/1765? In questo articolo si espone un metodo mentale per eseguire il calcolo basato sull’aritmetica modulare. Appreso il procedimento, con un po’ di esercizio, ti basteranno appena una decina di secondi per rispondere alla domanda.

1 – Introduzione

Si chiama calendario perpetuo il procedimento che permette di calcolare in quale giorno della settimana cada una qualsiasi data stabilita.

Tramite un computer, conoscendo l’esatto sistema con cui viene generato il calendario, si può elaborare con facilità un programma che fornisca istantaneamente il risultato.

Esistono inoltre varie tabelle, talvolta anche abbastanza complicate, che permettono di ottenere il giorno seguendo un particolare procedimento meccanico che sembra più magico che matematico.

Per svolgere il calcolo a mente il compito si rivela a prima vista decisamente difficile, e questo soprattutto perché il nostro calendario è tutt’altro che semplice.

Qui di seguito esporrò un metodo mentale per eseguire la suddetta operazione, basato sull’aritmetica modulare. Appreso il procedimento, con un po’ di esercizio, ti basteranno appena una decina di secondi per rispondere alla domanda "Che giorno della settimana era il 27/5/1765?" Naturalmente esistono altri metodi differenti da quello qui descritto, forse anche più semplici, ma questo mi sembra ben impostato e relativamente facile da comprendere.

Le prossime lezioni sono ancora introduttive, e se già pensi di conoscerle puoi saltare direttamente al punto 4.

2 – Le regole del nostro calendario

Per applicare il procedimento è importante capire bene come è articolato il nostro complesso calendario.

Fino al 1582 si contavano gli anni secondo il calendario Giuliano, che prescriveva di assegnare 366 giorni anziché 365 agli anni divisibili per 4. Fu scoperto, però, che la lunghezza effettiva degli anni è leggermente superiore ai 365 giorni e 6 ore che prevedeva il calendario Giuliano.

Il vero anno è lungo circa 11 minuti e 14 secondi in più, che propagati nei quindici secoli precedenti portano ad un errore tuttaltro che rilevante. E’ come quando usiamo un orologio che ritarda anche solo di 1 minuto al giorno: all’inizio sembra essere adatto al nostro modo di vedere passare il tempo, ma bastano due mesi perché si scopra essere indietro di un’ora, e dopo un anno esso sarà addirittura indietro di 6 ore! In qualche modo, se non vogliamo cambiare orologio, dobbiamo per forza fare delle correzioni all’ora di tanto in tanto. Lo stesso vale per il calendario. Per questo il Papa Gregorio, nel 1582 decise di cambiare le regole del calendario (fino allora detto Giuliano) per "riparare" l’errore temporale che ammontava ormai ad una decina di giorni.

In questo modo, eliminando i giorni "sbagliati" che non avrebbero dovuto esserci, aveva fatto seguire al 4 ottobre del 1582 il 15 ottobre, stabilendo così le nuove regole:

• Un anno comune ha 365 giorni

• Un anno divisibile per 4 ne ha 366 (è bisestile)

• Un anno divisibile per 100 non è considerato bisestile

• Un anno divisibile per 400 è invece considerato bisestile.

Come è facile immaginare, il metodo per il calcolo del giorno della settimana di una data qualsiasi è completamente differente se in quella data si utilizzava il calendario Giuliano e quello Gregoriano.

In questa sezione ci limiteremo ad analizzare il calendario Gregoriano, dato che è abbastanza discutibile l’utilità di calcolare quale fosse il giorno della settimana di una data di quello Giuliano.

Una prima cosa che abbiamo imparato è quindi che se qualcuno ti chiede: “Che giorno era il 7 ottobre 1582?”, avrete ben poche speranze di rispondere, dato che quel giorno non è mai esistito! 

3 – L’aritmetica modulare

Sebbene la parola possa apparire incomprensibile ai non matematici, in realtà in concetto è familiare a tutti, e ognuno di noi ne ha a che fare quando guarda l’orologio o conta sulle dita di una mano. Se ad esempio ti chiedo: "Dove sarà la lancetta dei minuti del tuo orologio fra 1 ora?", o "Che ora sarà fra esattamente 48 ore?", o ancora "Che giorno della settimana sarà fra 3 settimane?". La risposta è sempre la stessa, cioè che tutto sarà di nuovo esattamente com’è adesso.

In matematica la proprietà di essere nella stessa condizione dopo un intervallo fisso di n passi è detta congruenza modulo n. Quindi i minuti sono congruenti modulo 60, le ore modulo 24, i giorni della settimana modulo 7.

La proprietà principale delle congruenze modulo n è che si possono applicare per semplificare le operazioni di addizione, sottrazione e moltiplicazione: di quanti minuti si sposta la lancetta dei minuti se passano 65 minuti? Di 5 minuti, ed il risultato si può ottenere dall’operazione mod: 65 mod 60 = 5.

L’operazione a mod b significa: qual è il resto della divisione fra a e b? Non ci interessa il risultato, ma solo il resto!

Un ultimo esempio per chiarire il concetto, applicato proprio all’argomento in questione: "Che giorno della settimana sarà fra 49, 71, n giorni?" Basta risolvere i calcoli modulo 7: 49 mod 7 = 0, quindi sarà lo stesso giorno che è oggi; 71 mod 7 = 1, quindi sarà lo stesso giorno di domani; in generale n mod 7 dice di quanti giorni mi devo spostare da oggi per avere il risultato.

Ora puoi iniziare ad apprendere il procedimento: avrai bisogno di imparare a memoria alcuni dati (possono bastare anche solo i 12 valori per i mesi!), ma non scoraggiarti, perché alla fine la soddisfazione sarà notevole!

4 – Introduzione al procedimento

Il procedimento si basa completamente sulle regole fondamentali dell’aritmetica modulare. In particolare è importante ricordare che si può aggiungere o sottrarre ad un numero (in un modulo k qualsiasi) qualunque multiplo di k stesso. Dato che siamo interessati al calendario, per il momento lavoreremo sempre in aritmetica modulo 7, come 7 sono i giorni della settimana.

Associamo fin dall’inizio ogni risultato modulo 7 ad un giorno della settimana:

0 Domenica

1 Lunedì

2 Martedì

3 Mercoledì

4 Giovedì

5 Venerdì

6 Sabato

… scarica l’articolo completo (.PDF 151 KB)

Commenti

commenti

Ci sono 9 commenti su questo articolo:

  1. Salve, innanzitutto complimenti per l’articolo molto chiaro e ben fatto però dato che la tabella degli anni si ferma al 2006 c’è un metodo anche per trovare il numero k anche del 2013 e degli anni successivi? Grazie in anticipo e cordiali saluti.

  2. salve a tutti, premetto che oltre ad essere utile “per fare il figo con gli amici” ( cit. peppe), questo metodo può essere molto utile per esempio per i test d’ingresso, dove soprattutto nella sezione di logica saltano fuori quesiti del genere. detto ciò vorrei un chiarimento sul calcolo del numero K relativo all’anno, perchè a parte la tabella, non riesco a calcolarlo secondo la formula aaaa+ (aaaa-1/a) mod 7 che avete scritto li..me la potreste spiegare meglio? grazie in anticipo!

  3. SALVE MI CHIAMO DANIELE, E CERCANDO SU GOOGLE “LOGICA CALENDARIO PERPETUO” SONO ARRIVATO QUI. ORA, LEGGENDO IL VOSTRO ARTICOLO IN PDF HO PROVATO A CALCOLARE LE DATE E SU ALCUNE HO DEI RISULTATI DIFFERENTI.22/11/1982 OK; 1/3/1624 NO VENERDI MA MARTEDI; 27/8/2193 NO MARTEDI MA MERCOLEDI; 12/5/1958 OK.RISPOSTE ESERCIZI: MARTEDI; DOMENICA; LUNEDI;MERCOLEDI;MARTEDI. SE VOLETE POSSO CALCOLARE ANKE 100000000… A.C. CON IL PROGRAMMINO IN EXCEL CREATO DA ME CHE FA ANKE CAPIRE VERAMENTE COME MAI IL RISULTATO é SEMPRE GIUSTO. :-) QUESTO PROBLEMA DEL CALENDARIO PERPETUO ME L’ERO POSTO GIA DA ME PER CREARE UN APPLICAZIONE PERSONALE CON OFFICE E CON L’AIUTO DI EXCEL DOPO VARIE OSSERVAZIONI E ORE SONO ARRIVATO ALLA SOLUZIONE.:-)
    SE VOLETE CONTATTARMI LA MIA MAIL E’ d4niele80@hotmail.it SALUTI E A PRESTO.”LO SPIRITO DI DIO DA SAPIENZA”.

  4. Allora:
    Per il 31-12-1991 abbiamo:
    G=3
    N(12)=5
    K(91)=1
    C(1900)=0
    B=0

    2=martedì

    per il 1-1-1992 invece:
    G=1
    N(12)=0
    K(91)=2
    C(1900)=0
    B=0 (nota bene che come viene detto più volte nell’articolo, anche se l’anno è bisestile, sei a gennaio, quindi niente +1)

    3=mercoledì

  5. seguendo quanto scritto negli appunti riesco a calcolare tutti i giorni tranne quelli a partire dall’1/1/1992…ad esempio il 31/12/1991 è martedi mentre l’1/1/1992 secondo i calcoli viene di giovedi! cm mai? ho provato e tutto il mese di gennaio viene scalato ad un giorno dopo..potete spiegarmi cm mai?