This is an archive copy of wikilivres.ca as of 18 February 2017 (from the WikiTeam dump). The original site is closed.

Page:Swinnen - Apprendre Python, 2010.djvu/52

Free texts and images.
Jump to navigation Jump to search
This page has been proofread


30
Chapitre 4 - Instructions répétitives

tion puisse devenir fausse et la boucle se terminer.

Exemple de boucle sans fin (à éviter !) :


>>> n = 3
>>> while n < 5:
...         print (hello !)



Élaboration de tables

Recommencez à présent le premier exercice, mais avec la petite modification ci-dessous :


>>> a = 0
>>> while a < 12 :
…         a = a +1
…         print (a, a**2, a**3)

Vous devriez obtenir la liste des carrés et des cubes des nombres de 1 à 12.

Notez au passage que l’instruction print() permet d’afficher plusieurs expressions l’une à la suite de l’autre sur la même ligne : il suffit de les séparer par des virgules. Python insère automatiquement un espace entre les éléments affichés.



Construction d’une suite mathématique

Le petit programme ci-dessous permet d’afficher les dix premiers termes d’une suite appelée « Suite de Fibonacci ». Il s’agit d’une suite de nombres, dont chaque terme est égal à la somme des deux termes qui le précèdent. Analysez ce programme (qui utilise judicieusement l'affectation multiple). Décrivez le mieux possible le rôle de chacune des instructions.


>>> a, b, c = 1, 1, 1
>>> while c < 11 :
…         print (b, end =" ")
…         a, b, c = b, a+ b, c + 1

Lorsque vous lancez l’exécution de ce programme, vous obtenez :


1 2 3 5 8 13 21 34 55 89

Les termes de la suite de Fibonacci sont affichés sur la même ligne. Vous obtenez ce résultat grâce au second argument end =" " fourni à l’instruction print(). Par défaut, la fonction print() ajoute en effet un caractère de saut à la ligne à toute valeur qu'on lui demande d'afficher. L'argument end =" " signifie que vous souhaitez remplacer le saut à la ligne. Si vous supprimez cet argument, les nombres seront affichés l’un en-dessous de l’autre.

Dans vos programmes futurs, vous serez très souvent amenés à mettre au point des boucles de répétition comme celle que nous analysons ici. Il s’agit d’une question essentielle, que vous devez apprendre à maîtriser parfaitement. Soyez sûr que vous y arriverez progressivement, à force d’exercices.

Lorsque vous examinez un problème de cette nature, vous devez considérer les lignes d’instruction, bien entendu, mais surtout décortiquer les états successifs des différentes variables impliquées