Calendario perpetuo

Da Wikipedia, l'enciclopedia libera.
Calendario perpetuo (XVII secolo, Museo Galileo di Firenze).

Il calendario perpetuo è un algoritmo che permette di ricavare il giorno della settimana (lunedì, martedì, mercoledì, giovedì, venerdì, sabato, domenica) di una qualsiasi data del calendario. L'algoritmo farà spesso uso dell'operazione di modulo (indicata dal simbolo "mod") che è il resto della divisione (ad esempio: 18mod7=4 infatti 18/7=2 e il resto della divisione è 4).

L'algoritmo[modifica | modifica wikitesto]

Presa una data gg/mm/ssaa, si chiamano:

Il numero corrisponde a con le limitazioni
gg giorno del mese da 1 a 31
aa ultime due cifre dell'anno (anno mod 100) da 0 a 99
ss prime due cifre dell'anno [int(anno / 100)] da 15 in avanti

Il giorno del mese modulo sette dà il primo addendo G della somma finale:

  • G = gg mod 7

Il secondo addendo M è dato dalla seguente tabella:

Mese M (anno non bisestile) M (anno bisestile)
Gennaio 0 6
Febbraio 3 2
Marzo 3
Aprile 6
Maggio 1
Giugno 4
Luglio 6
Agosto 2
Settembre 5
Ottobre 0
Novembre 3
Dicembre 5

Il terzo addendo A si ricava dalle ultime due cifre dell'anno:

  • A = aa mod 28 + int[(aa mod 28) / 4]

Ad esempio, per il 2008, il risultato dell'operazione è:

A = 8 mod 28 + int[(8 mod 28) / 4] = 8 + int(8 / 4) = 8 + 2 = 10

Il quarto addendo C deriva dal secolo, cioè dalle prime due cifre ss dell'anno: ai 4 possibili risultati di (ss mod 4), si associa un numero C tale che:

ss mod 4 0 1 2 3
C 6 4 2 0

Infine si calcola:

  • [(G + M + A + C) mod 7] se l'anno non è bisestile o se si sta calcolando un giorno di gennaio o di febbraio di un anno bisestile;

La formula fornisce un numero compreso tra 0 e 6 che indicherà il giorno della settimana:

Risultato Giorno
0 Domenica
1 Lunedì
2 Martedì
3 Mercoledì
4 Giovedì
5 Venerdì
6 Sabato

I giorni antecedenti il venerdì 15 ottobre 1582 non possono essere così calcolati a causa dell'entrata in vigore del calendario gregoriano.

Esempi[modifica | modifica wikitesto]

Data: 15/04/2097

  • G = 15 mod 7 = 1
  • M = 6 (aprile)
  • A = 97 mod 28 + int[(97 mod 28) / 4) = 13 + int(13 / 4) = 13 + 3 = 16
  • C = 6 (ss = 20, 20 mod 4 = 0)
  • G + M + A + C = 1 + 6 + 16 + 6 = 29
  • 29 mod 7 = 1
  • Il giorno 15 aprile 2097 sarà un lunedì

Data: 22/10/2008

  • G = 22 mod 7 = 1
  • M = 0 (ottobre)
  • A = 8 mod 28 + int[(8 mod 28) / 4] = 8 + int(8 / 4) = 8 + 2 = 10
  • C = 6 (ss = 20, 20 mod 4 = 0)
  • G + M + A + C = 1 + 0 + 10 + 6 = 17
  • 17 mod 7 = 3
  • Il giorno 22 ottobre 2008 è stato un mercoledì

Data: 15/10/1582

  • G = 15 mod 7 = 1
  • M = 0 (ottobre)
  • A = 82 mod 28 + int[(82 mod 28) / 4]= 26 + int(26 / 4) = 26 + 6 = 32
  • C = 0 (ss = 15, 15 mod 4 = 3)
  • G + M + A + C = 1 + 0 + 32 + 0 = 33
  • 33 mod 7 = 5
  • Il giorno 15 ottobre 1582 è stato un venerdì

Calendari perpetui storici[modifica | modifica wikitesto]

Un calendario perpetuo fu costruito nel 1741-1741 per il re di Francia Luigi XV. Composto di quattro pannelli in bronzo dorato al mercurio, ha tasselli mobili in smalto bianco che recano date. Ogni pannello ha una cimasa con le insegne reali e con questa scrittaː«Almanch perpétuel et toujours nouveau dédié au Roi». Ai lati della scritta ci sono il sole e la luna dipinti in oro. Ogni pannello è diviso in verticale in tre parti, una per ogni mese del trimestre. Ogni parte è divisa a sua volta in tre colonne, dotate di tasselli scorrevoli smaltatiː nella prima colonna ci sono i giorni della settimana e le fasi della luna; nella seconda colonna c'è la data in cifra; nella terza colonna ci sono i giorni festivi, insieme al segno zodiacale smaltato e a colori e al nome del mese in bianco e nero. Lo spostamento dei tasselli consente di regolare le date ogni anno.[1]

Note[modifica | modifica wikitesto]

  1. ^ Dizionario dell'antiquariato maggiore e minore, Roma, Gremese, 2002, SBN IT\ICCU\TO0\1149444. Sotto la direzione di Jean Bedel; edizione italiana a cura di Alcide Giallonardi.

Voci correlate[modifica | modifica wikitesto]

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]

Controllo di autorità GND: (DE4198916-8