On donne l'algorithme en Python ci-dessous correspondant au calendrier choisi par les Perses.
1. Quelle est la nature des variables q et r créées en début de programme ? Pourquoi a‑t‑on choisi ce type de variables plutôt que des variables numériques ?
2. Que représentent les nombres int(r[i]/r[i+1]) et r[i]-r[i+1]*int(r[i]/r[i+1]) ?
3. Interpréter le résultat affiché après exécution : combien de jours les Perses ajoutaient‑ils sur combien d'années ?
4. Modifier ce programme afin qu'il affiche l'erreur commise et le nombre d'années au bout desquelles l'erreur atteint un jour entier (appelé « validité »).
from fractions import*
q = [365]r = [10000, 2422]
for i in range(3):
q.append(int(r[i]/r[i+1]))
r.append(r[i]-r[i+1]*int(r[i]/r[i+1]))
B = Fraction(1, q[1] + Fraction(1, q[2] + Fraction(1, q[3])))
print(B)