Le programme ci-dessous affiche tous les nombres de 1 à 10 :
print 1
print 2
print 3
print 4
print 5
print 6
print 7
print 8
print 9
print 10
Nous voyons que nous avons écrit 10 fois la même instruction print en énumérant les nombres de 1 à 10. Nous avons ainsi réalisé à la main une tâche répétitive qui peut très bien être automatisée en utilisant une structure de boucle :
for i in range(1,11):
print i
Nous avons utilisé la fonction range.
La fonction range(a,b) génère une liste qui commence à a et termine à b-1.
On peut aussi mettre un pas, range(a,b,c) génère une liste qui commence à a, puis a+c, a+2c ..., tant que le résultat est inférieur à b.
Essaye le code suivant (tu peux le modifier):
print "range(1,11)=",range(1,11)
print "range(1,11,3)=",range(1,11,3)
Nous avons utilisé une boucle for, l'instruction comporte deux parties :
la commande for, où i va prendre toutes les valeurs de la liste (ici range (1,11))
le bloc d'instructions à répéter respectant l'indentation (la tabulation).
Observez bien le fonctionnement de la structure de programmation for en déroulant le deboggeur :
Utiliser la console pour écrire vos codes :
1. Ecrire un programme qui affiche tous les nombres pairs entre 0 et 20.
2. a. Ecrire un programme qui affiche la table de multiplications par 5, de 5 x 1 à 5 x 10.
b. Améliorer le programme précédent en donnant la possibilité à l'utilisateur de choisir la table qu'il veut afficher.