ISBS ECUE 122 TP1 Programmation avec Python (avec corrigé) 2016-2017
Exercice 5 — Les grains de blé sur l’échiquier
Solution p. 11
L’écrivain arabe A s a p h a d rapporte, en effet, que S e s s a, fils de Da h e r, imagina le jeu des échecs,
où le roi, quoique la pièce la plus importante, ne peut faire un pas sans le secours de ses sujets les pions, dans
le but de rappeler au monarque indien S c h e r a n les principes de justice et d’équité avec lesquels il devait
gouverner. S c h e r a n, enchanté d’une leçon donnée d’une manière si ingénieuse, promit à l’inventeur de lui
donner tout ce qu’il voudrait pour sa récompense. Celui-ci répondit : « Que Votre Majesté daigne me donner
un grain de blé pour la première case de l’échiquier, deux pour la seconde, quatre pour la troisième, et ainsi
de suite, en doublant jusqu’à la soixante-quatrième case. »
Édouard L u c a s,L’arithmétique amusante, Blanchard 1974
Écrivez la suite d’instructions permettant de calculer le nombre d’années de production qu’il faudrait pour
garnir l’échiquier (on prendra 0,035 g pour la masse d’un grain et 653 millions de tonnes pour la production
annuelle mondiale de blé en 2013).
Note : La solution :
>>> int((2 ** 64 - 1) * 0.035 / 1000000 / 653000000)
988
donne le résultat, mais n’est pas assez claire. Pour rendre ce calcul plus lisible en évitant d’utiliser une expression
ne contenant que des nombres, utilisez des variables en leur donnant des noms parlants, de manière à ce que la
suite d’instruction s’auto-commente.
Par exemple,
>>> masse_d_un_grain = 0.035
4 Écriture de programmes
La fenêtre Python Shell s’avère vite insuffisante lorsque les développements prennent de l’importance. Il est
nécessaire alors de stocker des suites d’instructions dans un fichier (script) que l’on peut sauvegarder sur disque
pour le conserver et le réutiliser en cas de besoin.
Pour pouvoir saisir un programme et le sauvegarder, on dispose de l’éditeur de texte IDLE (lui-même écrit en
Python).
Dans la fenêtre Python Shell, choissez le File/New File. La fenêtre ci-dessous apparaît.
Cette fenêtre, titrée pour l’instant Untitled, va nous permettre de saisir notre premier programme, limitée à
une seule instruction :
print("Bonjour")# print affiche le texte écrit entre double quotes
On peut sauvegarder ce programme (le classique File/Save As...), et pour exécuter ce programme, on utilise le
menu Run/Run Module (raccourci <F5>).
La fenêtre Python Shell est réinitialisée et le programme s’exécute.
Les expressions peuvent être nommées pour être réutilisées plus facilement. Par exemple, pour demander à
l’utilisateur son nom, puis lui afficher un message de bienvenue :
–5/14–