Puoi scoprire in quale giorno della settimana cade una determinata data nel passato, nel presente o nel futuro utilizzando il cosiddetto calendario perpetuo. Puoi realizzare un dispositivo del genere a casa.
Istruzioni
Passo 1
Realizza sette carte calendario per un mese, nella prima delle quali il mese inizia lunedì, nella seconda martedì, nella terza mercoledì, e così via fino al calendario in cui il mese inizia domenica. Assegna i numeri da 1 a 7 alle carte e assegna il primo numero a un calendario in cui il mese inizia di lunedì. Realizza queste carte in cartone pesante e laminale, perché il calendario è progettato per essere conservato e utilizzato per molti anni.
Passo 2
Includere anche nell'insieme del calendario perpetuo una carta con la seguente formula: h = d + ((13m-1) / 5) + r + (y / 4) + (v / 4) -2v, dove: - h è il risultato intermedio come ulteriore trasformazione; - d - data; - m - mese, scelto in un modo un po' insolito: marzo - il primo mese, febbraio - dodicesimo; - d - le ultime due cifre del numero dell'anno (se il mese è gennaio o febbraio, quindi l'anno precedente); - in - il numero del secolo da cui è stata sottratta l'unità (per gennaio o febbraio, sottrarre 2 anziché 1). Anche questa carta è realizzata in cartoncino spesso e laminata. Pinza insieme tutte le carte in modo che non vadano perse. Crea una comoda custodia per il calendario perpetuo, se vuoi, conservaci una calcolatrice delle dimensioni appropriate.
Passaggio 3
Dopo aver effettuato i calcoli secondo la formula indicata, dividi il risultato di h per sette con il resto.
Passaggio 4
Prendi il modulo dal resto della divisione.
Passaggio 5
Prendi una carta con un numero uguale al risultato dell'ultimo calcolo, quindi usala per determinare il giorno della settimana.
Passaggio 6
Facoltativamente, scrivi un programma per eseguire calcoli per entrambe le formule in qualsiasi linguaggio di programmazione che conosci. In questo caso, tuttavia, la divisione con il resto può essere difficile, poiché nella maggior parte dei linguaggi di programmazione non esiste una funzione pronta per questo. È più conveniente usare il linguaggio Pascal, in cui è disponibile la funzione corrispondente. Per trovare la parte intera del risultato della divisione con resto, usa una riga della forma seguente: c: = a div b. Per trovare il resto della divisione, usa una riga di un'altra forma: c: = a mod b.