Parcourir des entiers avec for et range
Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.
Créer un compteMéthode
Pour parcourir des entiers avec une boucle for :
- Écrire for i in range(...) : suivi des deux-points. La variable i (on peut lui donner n'importe quel nom) prendra successivement les valeurs entières indiquées.
- Choisir le bon appel à range :
- range(n) : parcourt 0, 1, 2, …, $n-1$ (donc $n$ valeurs au total).
- range(a, b) : parcourt $a$, $a+1$, …, $b-1$ (donc $b-a$ valeurs).
- range(a, b, p) : parcourt $a$, $a+p$, $a+2p$, … tant que la valeur reste strictement inférieure à $b$.
- Indenter les instructions à répéter. Elles sont exécutées pour chaque valeur de i.
- Revenir à gauche pour les instructions exécutées après la boucle.
Afficher les entiers de 1 à 5
On veut afficher les entiers de 1 à 5 :
for i in range(1, 6) :
print(i, end=" ")
print("fin")
Étape 1 : On souhaite que i prenne les valeurs 1, 2, 3, 4, 5 (cinq valeurs). On écrit donc range(1, 6) (la borne supérieure est exclue).
Étape 2 : À chaque tour de boucle, i prend une nouvelle valeur et print(i, end=" ") affiche cette valeur suivie d'un espace (au lieu d'un saut de ligne).
Étape 3 : Après la boucle, le programme affiche « fin ». Résultat à l'écran :
1 2 3 4 5 fin
Multiples de 3 inférieurs à 20
On veut afficher 0, 3, 6, …, 18 :
for i in range(0, 20, 3) :
print(i, end=" ")
Étape 1 : Le pas est 3 (on va de 3 en 3). Le point de départ est 0. Le dernier multiple de 3 strictement inférieur à 20 est 18.
Étape 2 : On écrit range(0, 20, 3). À chaque tour, i vaut 0, 3, 6, 9, 12, 15, 18 (sept valeurs).
Étape 3 : Le programme affiche : 0 3 6 9 12 15 18.
Attention
Piège principal : la borne supérieure de range est exclue.
Pour parcourir les entiers de 1 à 10 inclus, il faut écrire range(1, 11) et non range(1, 10).
Pour parcourir les entiers de 0 à $n$ inclus, il faut écrire range(n + 1).