Iteration · Itération
Repeat with iteration
- Iteration means doing the same steps again and again.
- Loops save you from writing the same line many times.
- AP CSP cares about loops because they let a little code do a lot of work.
Répéter avec itération
- L'itération signifie faire les mêmes étapes encore et encore.
- Les boucles vous évitent d'écrire la même ligne de nombreuses fois.
- AP CSP se soucie des boucles car elles permettent à un petit code de faire beaucoup de travail.
Count with for and range
for i in range(n):repeats the bodyntimes.range(5)gives0, 1, 2, 3, 4(it stops before 5).- The loop body is indented, like an
if.
Compter avec for et range
for i in range(n):répète le corpsnfois.range(5)donne0, 1, 2, 3, 4(il s'arrête avant 5).- Le corps de la boucle est indented, comme un
if.
for i in range(5):
print(i)
Build a total (accumulation)
- An accumulator is a variable that grows inside a loop.
- Start it at
0before the loop. - Add to it each pass to build a running total.
Construire un total (accumulation)
- Un accumulateur est une variable qui grandit à l'intérieur d'une boucle.
- Commencez-le à
0avant la boucle. - Ajoutez-y à chaque passage pour construire un total cumulé.
total = 0
for n in range(1, 6):
total = total + n
print(total)
Loop until a condition with while
- A
whileloop repeats as long as its condition isTrue. - Something inside must move toward making it
False. - Use it when you do not know the count in advance.
Boucle jusqu'à une condition avec while
- Une boucle
whilerépète aussi longtemps que sa condition estTrue. - Quelque chose à l'intérieur doit tendre vers la rendre
False. - Utilisez-le lorsque vous ne connaissez pas l'avance du comptage.
count = 3
while count > 0:
print(count)
count = count - 1
Loop over a list (for-each)
for item in mylist:visits each item in turn.- The loop variable holds one item per pass.
- This is the clean way to process every value.
Itération sur une liste (for-each)
for item in mylist:parcourt chaque élément à son tour.- La variable de boucle contient un élément à chaque passage.
- C'est la méthode propre pour traiter toutes les valeurs.
scores = [10, 20, 30]
for s in scores:
print(s)
In AP CSP pseudocode
- CB has three loop shapes that match Python loops.
REPEAT n TIMES= a fixed count;REPEAT UNTIL(cond)= loop until true.FOR EACH x IN list= a for-each loop.DISPLAY= print,←==,MOD=%.
En pseudocode AP CSP
- CB a trois formes de boucles qui correspondent aux boucles Python.
REPEAT n TIMES= un comptage fixe ;REPEAT UNTIL(cond)= boucle jusqu'à ce que ce soit vrai.FOR EACH x IN list= une boucle for-each.DISPLAY= print,←==,MOD=%.
REPEAT 5 TIMES
{
DISPLAY "hi"
}
count ← 3
REPEAT UNTIL (count = 0)
{
DISPLAY count
count ← count - 1
}
FOR EACH s IN scores
{
DISPLAY s
}
Common mistakes
range(n)runs0ton - 1.- Change the condition inside a
while, or it never stops.
Erreurs courantes
range(n)s'exécute de0àn - 1.- Changez la condition dans une
while, sinon elle ne s'arrête jamais.
Now you try
- Use a loop in each task.
- Press Check answer to test your code.
À vous maintenant
- Utilisez une boucle dans chaque tâche.
- Appuyez sur Vérifier la réponse pour tester votre code.
Iteration repeats the body · L'itération répète le corps
A loop repeats; a counter and a total change each pass. · Une boucle répète ; un compteur et un total changent à chaque passage.
Use a for loop with range(...) to add the whole numbers 1 through 10. Store the result in total. (It should be 55.) · Utilisez une boucle for avec range(...) pour additionner les nombres entiers de 1 à 10. Stockez le résultat dans total. (Il devrait être 55.)
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Use a while loop to print the numbers 5, 4, 3, 2, 1, each on its own line, then print Go. Start from n = 5. · Utilisez une boucle while pour imprimer les nombres 5, 4, 3, 2, 1, chacun sur sa propre ligne, puis imprimez Go. Commencez depuis n = 5.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
nums is [3, 6, 7, 8, 10, 11]. Loop over it with a for-each loop and count how many values are even (use % 2 == 0). Store the count in evens. (It should be 3.) · nums est [3, 6, 7, 8, 10, 11]. Parcourez-le avec une boucle for-each et comptez combien de valeurs sont paires (utilisez % 2 == 0). Stockez le compteur dans evens. (Il devrait être 3.)
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.