Dopo aver installato il Python sul proprio computer con la versione giusta per il proprio sistema operativo cominciamo a scrivere alcuni programmi.
Il seguente programma calcola il mese e il giorno della Pasqua, fornendo in input l'anno nel formato YYYY (per esempio nel 2019 la Pasqua sarà il giorno... 21 aprile.
Ecco il programma in Python
# calcolo del giorno e del mese della Pasqua
# made by Fausto
# versione 0.1
# 2016.03.21
def verifica_anno(p_anno):
import string
for i in range(0, len(p_anno)):
if p_anno[i] not in string.digits:
return False
return True
print("Inserire l'anno per calcolare il giorno e il mese per la Pasqua")
Stringa_anno = input(": ")
if not verifica_anno(Stringa_anno):
print(Stringa_anno,' non è un anno')
else:
anno = int(Stringa_anno)
mesi=["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno"];
b=anno//100
c=anno%100
a=(5*b+c)%19
r=(3*(b+25))//4
s=(3*(b+25))%4
t=(8*(b+11))//25
h=(19*a+r-t)%30
g=(a+11*h)//319
j=(60*(5-s)+c)//4
k=(60*(5-s)+c)%4
m=(2*j-k-h+g)%7
mese = (h-g+m+110)//30
q = (h-g+m+110)%30
giorno = (q+5-mese)%32
print("La Pasqua dell'anno ", anno, " è il giorno ", giorno," di", mesi[mese-1])
print("Fine")
Se lo si manda in esecuzione ecco alcune prove:
>>> RESTART: calcolo_pasqua.py Inserire l'anno per calcolare il giorno e il mese per la Pasqua : 2021 La Pasqua dell'anno 2021 è il giorno 4 di Aprile Fine >>> RESTART: calcolo_pasqua.py Inserire l'anno per calcolare il giorno e il mese per la Pasqua : 2025 La Pasqua dell'anno 2025 è il giorno 20 di Aprile Fine >>> RESTART: calcolo_pasqua.py Inserire l'anno per calcolare il giorno e il mese per la Pasqua : 2016 La Pasqua dell'anno 2016 è il giorno 27 di Marzo Fine >>> RESTART: calcolo_pasqua.py Inserire l'anno per calcolare il giorno e il mese per la Pasqua : 2019 La Pasqua dell'anno 2019 è il giorno 21 di Aprile Fine >>>
L'algoritmo è tratto dal libro "Coding Lab", ISBN 978-88-08-42117-3 di Meini, Formichi, Di Palma, Tani e Venuti, edito da Zanichelli che si consiglia per approfondimenti sul Python, sul Problem Solving, su Scratch , su MIT App Inventor e su Raspberry PI.