Loops: while, for, and accumulation · Boucles : while, for et accumulation
Repeating work
- A loop runs the same block of code many times, so you don't copy it by hand.
- C has three loops:
while,for, anddo-while. They all repeat while a condition is true. - The condition is checked each time around. When it becomes false, the loop stops.
Répéter du travail
- Une boucle exécute le même bloc de code plusieurs fois, évitant ainsi de le copier à la main.
- Le C a trois boucles :
while,foretdo-while. Elles répètent tant qu'une condition est vraie. - La condition est vérifiée à chaque tour. Quand elle devient fausse, la boucle s'arrête.
while loops
while (test) { ... }checks the test first, then runs the block if it is true.- Something inside the block must eventually make the test false, or the loop never ends.
- Use
whilewhen you don't know in advance how many times you will repeat.
Boucles while
while (test) { ... }teste d'abord, puis exécute le bloc si c'est vrai.- Quelque chose à l'intérieur du bloc doit finalement rendre le test faux, sinon la boucle ne se termine jamais.
- Utilisez
whilelorsque vous ne savez pas à l'avance combien de fois vous répéterez.
for loops
- A
forloop puts three parts in one line:for (start; test; step). for (int i = 0; i < 5; i++)means: startiat0, keep going whilei < 5, add1each time.- Use
forwhen you are counting a known number of times.
Boucles for
- Une boucle
formet trois parties en une seule ligne :for (start; test; step). for (int i = 0; i < 5; i++)signifie : commencezià0, continuez tant quei < 5, ajoutez1à chaque fois.- Utilisez
forlorsque vous comptez un nombre connu de fois.
#include <stdio.h>
int main(void) {
int total = 0;
for (int i = 1; i <= 4; i++) {
total = total + i; // accumulate: 1, then 3, then 6, then 10
}
printf("%d\n", total); // 10
return 0;
}
Accumulation and counting
- An accumulator is a variable that builds up a result across the loop, like
totalabove. - A counter adds
1each time something happens, to count matches. break;stops the loop early;continue;skips to the next round.
Accumulation et comptage
- Un accumulateur est une variable qui construit un résultat à travers la boucle, comme
totalci-dessus. - Un compteur ajoute
1à chaque fois qu'un événement se produit, pour compter les correspondances. break;arrête la boucle précocement ;continue;passe à la prochaine itération.
Common mistakes
- Do not put a
;right afterfor(...)— it makes an empty loop. - Change the condition so the loop can end.
Erreurs courantes
- Ne placez pas un
;juste aprèsfor(...)— cela crée une boucle vide. - Modifiez la condition pour que la boucle puisse se terminer.
Now you try
- Set up your accumulator or counter before the loop, update it inside, and use it after.
- For the function tasks, do not write a
main— the checker provides one.
À vous maintenant
- Initialisez votre accumulateur ou compteur avant la boucle, mettez-le à jour à l'intérieur, et utilisez-le après.
- Pour les tâches de fonction, n'écrivez pas de
main— le vérificateur en fournit une.
Loops and accumulation · Boucles et accumulation
A loop repeats; a running total · total cumulé builds up each pass. · Une boucle se répète ; un total cumulatif s'accumule à chaque passage.
In main, use a for loop to print the numbers 1 to · à 5, each on its own line. · Dans main, utilisez une boucle for pour imprimer les nombres 1 à 5, chacun sur sa propre ligne.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Complete int sum_to(int n) so it returns 1 + 2 + ... + n. Return 0 when n is 0 or negative. Do not · non write a main. · Complétez int sum_to(int n) pour qu'il retourne 1 + 2 + ... + n. Retournez 0 lorsque n est 0 ou négatif. Ne pas écrire de main.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Complete int count_multiples(int n, int k) so it returns how many numbers from 1 to · à n are divisible by k. Use % inside a loop. Do not · non write a main. · Complétez int count_multiples(int n, int k) pour qu'il retourne combien de nombres de 1 à n sont divisibles par k. Utilisez % dans une boucle. Ne pas écrire de main.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.