Mathématiques · CAPCAP
Boucles et conditions : quiz de CAP
Publié le 9 novembre 2026 · Mis à jour le 9 novembre 2026 · Signaler une erreur
L'essentiel
- Une instruction conditionnelle (if) choisit si un bloc s'exécute, une seule fois au plus.
- Une boucle bornée (for) répète un nombre de fois connu à l'avance ; une boucle non bornée (while) a besoin d'une condition d'arrêt.1
- La boucle while évalue sa condition avant chaque passage et s'arrête quand elle devient fausse.3
- Une boucle infinie vient d'une condition d'arrêt qui ne peut pas être atteinte : c'est presque toujours un bug.2
- Pour prédire un résultat, déroule le programme à la main en notant la valeur des variables à chaque passage.
Avant de commencer
Ce quiz couvre les instructions conditionnelles et les boucles que tu rencontres en algorithmique et en programmation, par exemple en Python. Tu as déjà vu les variables et les instructions : tu sais donner une valeur à une variable et la modifier. Ici, tu vas t'en servir pour répéter des actions et pour faire des choix.
Les programmes de ce niveau reposent sur trois outils : les variables, les instructions conditionnelles et les boucles.1 Les questions te demandent de reconnaître chacun d'eux, de déterminer ce qu'un petit programme affiche ou calcule, et de repérer pourquoi un programme ne s'arrête jamais.
Quiz
15 questions · correction immédiate · ton score reste sur ton appareil.
-
La condition est évaluée avant chaque passage : tant qu'elle est vraie, le corps est exécuté, et la répétition cesse quand elle devient fausse.3 Dire qu'elle s'arrête quand la condition devient vraie inverse le rôle de la condition. Le nombre de passages n'est pas fixé à deux : il dépend de la condition.
-
Au départ x vaut 0. Les passages font passer x à 1, 2, 3, 4 puis 5. Quand x vaut 5, la condition x < 5 est fausse et on sort : cela fait 5 passages. La réponse 4 oublie le passage qui amène x de 4 à 5 ; la réponse 6 compte à tort un passage avec x égal à 5.
-
C'est vrai : la condition est vérifiée en premier, donc la boucle peut très bien ne jamais s'exécuter.3 L'idée contraire, selon laquelle le corps passe toujours au moins une fois, ne vaut que pour la forme « faire ... tant que ».
-
Dans le deuxième programme, le corps remet toujours i à 1 : i reste inférieur à 10 et la condition est toujours vraie, donc on ne sort jamais.2 Dans les programmes 1 et 3, i augmente jusqu'à atteindre 10. Dans le programme 4, la condition est fausse dès le début : la boucle ne tourne pas du tout, ce qui n'est pas une boucle infinie.
-
Les boucles bornées s'écrivent avec for, alors que les boucles non bornées demandent de préciser une condition d'arrêt.1 La boucle while n'est donc pas la boucle bornée. Recopier les instructions à la main n'est pas nécessaire : c'est justement ce que la boucle évite.
-
C'est vrai : une telle boucle ne fournit pas de résultat et mobilise les ressources de l'ordinateur sans fin.2 Il existe de rares usages voulus, mais ils prévoient toujours un moyen de sortir ; ce n'est pas le cas général.
-
On peut voir la boucle while comme un if répété : tant que la condition reste vraie, le bloc est rejoué.3 Inverser les rôles est l'erreur tentante, mais c'est bien while qui répète. Les deux utilisent une condition.
-
On ajoute successivement 1, 2, 3 et 4 : s vaut 1, puis 3, puis 6, puis 10. Quand i vaut 5, la condition i <= 4 est fausse. Trouver 6 revient à oublier le passage avec i égal à 4 ; trouver 15 revient à ajouter aussi 5.
-
La condition est d'abord évaluée, puis le corps est exécuté si elle est vraie ; il est donc possible qu'il ne le soit jamais.3 Les deux autres propositions sont fausses : la condition est testée à chaque tour, et c'est quand elle devient fausse que la boucle s'arrête.
-
Dans cette forme, le test est placé à la fin de la boucle, ce qui garantit au moins un passage.3 La proposition « teste avant le premier passage » décrit au contraire le while classique.
-
La condition n >= 10 est fausse, car 7 est inférieur à 10 : on exécute donc le bloc du else et le programme affiche petit. Il n'affiche pas grand, qui appartient au bloc du if. Il n'affiche pas les deux non plus : un seul des deux blocs s'exécute.
-
Avec range(6), la variable i prend les valeurs 0, 1, 2, 3, 4 et 5, soit six valeurs. L'erreur tentante est de répondre 5 en croyant que la boucle va de 1 à 5 ; en réalité, elle démarre à 0 et n'atteint pas 6.
-
x vaut 30, puis 22, puis 14 (ces valeurs sont toutes supérieures à 10, la boucle continue), puis 6. À ce moment, 6 > 10 est faux et la boucle s'arrête. Répondre 14 s'arrête un passage trop tôt : la dernière soustraction a bien lieu quand x vaut 14.
-
Il faut que la variable évolue pour que la condition d'arrêt puisse enfin être vérifiée, sinon la boucle reste infinie.1 En ajoutant 1 à i à chaque tour, i atteint 10 et la condition devient fausse. Remettre i à 0 ou à 1 empêche i de grandir, et afficher 10 ne change pas la valeur de i.
Les questions qu'on se pose
Comment savoir si je dois utiliser for ou while ?
Demande-toi si tu connais le nombre de répétitions avant de commencer. Si oui, une boucle for (boucle bornée) convient. Sinon, par exemple quand tu répètes jusqu'à ce qu'une valeur dépasse un seuil, il faut une boucle while avec une condition d'arrêt.1
Mon programme tourne sans s'arrêter : que vérifier ?
Regarde la condition de la boucle et cherche, dans le corps, une instruction qui fait évoluer la variable testée. Si la condition ne peut jamais devenir fausse, la boucle est infinie et seule une interruption du programme la stoppe.2 Ajoute ou corrige l'instruction qui modifie la variable, par exemple en augmentant un compteur.
Sources
- Algorithmique et programmation - Ressources d'accompagnement, Éduscol. Consulté le 9 novembre 2026.
- Boucle infinie, Wikipédia. Consulté le 9 novembre 2026.
- Boucle while, Wikipédia. Consulté le 9 novembre 2026.
Les numéros dans le texte renvoient à ces sources. Une source qui ne dit pas ce qu'on lui fait dire ? Signale-le.