While loops · Boucles While
Loop while a condition is true
- A
whileloop repeats as long as its condition is true. - It checks the condition before each pass.
- Use it when you do not know the number of repeats in advance.
Boucle tant qu'une condition est vraie
- Une boucle
whilerépète aussi longtemps que sa condition est vraie. - Elle vérifie la condition avant chaque passage.
- Utilisez-la quand vous ne connaissez pas le nombre de répétitions à l'avance.
Always change the condition
- Something inside the loop must move toward making the condition false.
- If it never becomes false, the loop runs forever (an infinite loop).
- Press Stop if a loop ever gets stuck.
Toujours changer la condition
- Quelque chose à l'intérieur de la boucle doit tendre vers rendre la condition fausse.
- Si elle ne devient jamais fausse, la boucle tourne indéfiniment (une boucle infinie).
- Appuyez sur Arrêter si une boucle bloque jamais.
count = 3
while count > 0:
print(count)
count = count - 1
break and continue
breakstops the loop right away.continueskips the rest of this pass and goes to the next one.while True:loops forever until abreakends it.
break et continue
breakarrête la boucle immédiatement.continuesaute le reste de ce passage et passe au suivant.while True:boucle indéfiniment jusqu'à ce qu'unbreakl'arrête.
n = 0
while True:
n = n + 1
if n == 4:
break
print(n)
Checking before or after
- A
whileloop checks first, so it may run zero times. - A "repeat until" loop checks after, so it always runs at least once.
- Python has no
repeat; usewhile True:with abreakat the end.
Vérifier avant ou après
- Une boucle
whilevérifie d'abord, donc elle peut s'exécuter zéro fois. - Une boucle "répéter jusqu'à" vérifie après, donc elle s'exécute toujours au moins une fois.
- Python n'a pas de
repeat; utilisezwhile True:avec unbreakà la fin.
In Cambridge pseudocode
whileis the pre-condition loop;REPEAT … UNTILis the post-condition loop.
En pseudocode Cambridge
whileest la boucle à précondition ;REPEAT … UNTILest la boucle à postcondition.
Count ← 3
WHILE Count > 0
OUTPUT Count
Count ← Count - 1
ENDWHILE
REPEAT
OUTPUT Count
Count ← Count + 1
UNTIL Count = 3
Common mistakes
- Change something inside the loop so the condition can become false, or it runs forever.
- A
whilechecks its condition first, so it may run zero times.
Erreurs courantes
- Changez quelque chose à l'intérieur de la boucle pour que la condition puisse devenir fausse, sinon elle tourne indéfiniment.
- Un
whilevérifie sa condition d'abord, donc il peut s'exécuter zéro fois.
Now you try
- Make sure your condition will eventually become false.
- Stuck on the loop? Do the short drill Finish the countdown first. It is one missing line.
- Press Check answer to test your code.
À vous maintenant
- Assurez-vous que votre condition deviendra finalement fausse.
- Bloqué sur la boucle ? Faites d'abord le mini-exercice court Terminer le compte à rebours. C'est une ligne manquante.
- Appuyez sur Vérifier la réponse pour tester votre code.
A while loop builds up a value · Une boucle while construit une valeur
A while loop repeats until its condition is false. · Une boucle while répète jusqu'à ce que sa condition soit fausse.
Use a while loop to count down. Each turn, print the value of count, then make count one smaller. Stop when it reaches 0, so the output is 5, 4, 3, 2, 1 — one per line. · Utilisez une boucle while pour compter à reculons. À chaque tour, affichez la valeur de count, puis réduisez count d'une unité. Arrêtez quand il atteint 0, de sorte que la sortie soit 5, 4, 3, 2, 1 — une par ligne.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Use a while loop to add up the numbers 1 to · à 10. Store the total in total (the answer is 55). · Utilisez une boucle while pour additionner les nombres de 1 à 10. Stockez le total dans total (la réponse est 55).
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Start · Commencer n at 1 and add 1 each pass. The loop stops too soon: it ends while n is still 1. Change the condition so it keeps going while n * n is at most 50. When it stops, n is the first whole number whose square is over 50. · Commencez n à 1 et ajoutez 1 à chaque passage. La boucle s'arrête trop tôt : elle se termine alors que n est encore 1. Changez la condition pour qu'elle continue tant que n * n est au plus 50. Quand elle s'arrête, n est le premier nombre entier dont le carré dépasse 50.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Same answer, with break. n starts at 1 inside while True:. The if is already inside the loop and n grows after · après it. Change the condition so you break when n * n is greater than 50. Leave the answer in n (it is 8). Do not add 1 before the test — that makes the answer 9. · Même réponse, avec break. n commence à 1 à l'intérieur de while True:. Le if est déjà dans la boucle et n augmente après cela. Changez la condition pour que vous break quand n * n est supérieur à 50. Laissez la réponse dans n (c'est 8). N'ajoutez pas 1 avant le test — cela rendrait la réponse 9.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Start with n = 1 and · et steps = 0. While n is smaller than 1000, double n and add 1 to · à steps. When the loop ends, n is 1024. How many doublings did it take? Leave the answer in steps. · Commencez avec n = 1 et steps = 0. Tant que n est plus petit que 1000, doublez n et ajoutez 1 à steps. Lorsque la boucle se termine, n est 1024. Combien de doubles cela a-t-il fallu ? Laissez la réponse dans steps.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.