Logique de
Programmation

La boucle while (tant que)

La boucle while est une structure répétitive qui permet de répéter un bloc de code tant qu'une condition est vraie. Elle est composée d'une expression booléenne qui est évaluée avant chaque itération. Si l'expression est vraie, le bloc de code est exécuté, sinon la boucle est terminée.

La syntaxe de la boucle while est la suivante :

Python

Le bloc de code à répéter est indenté, c'est-à-dire qu'il est décalé vers la droite comme nous l'avons vu avec les structures conditionnelles et les fonctions. La condition est évaluée avant chaque itération, si elle est vraie, le bloc de code est exécuté, sinon la boucle est terminée. Si la condition est fausse dès le départ, le bloc de code ne sera jamais exécuté.

Exemple

Prenons pour exemple un programme qui fait un compte à rebours de 10 à 1. Nous allons utiliser une boucle while pour cela.

Python

Si nous faisions cette exemple sans boucle, nous aurions dû écrire 10 lignes de code pour afficher chaque nombre. Grâce à la boucle while, nous avons pu réduire ce nombre à 4 lignes. De plus, si l'on voulait faire un compte à rebours de 1000 à 1, nous n'aurions qu'à changer la valeur de compteur à 1000. C'est l'un des avantages des boucles, elles permettent de répéter un bloc de code sans

Note
Veuillez noter que la boucle contient une instruction qui nous permet de faire évoluer la condition compteur -= 1. Si nous oublions cette instruction, la condition compteur > 0 sera toujours vraie et la boucle ne s'arrêtera jamais.

La boucle do-while

Il existe certains problèmes dans lesquels il est nécessaire de faire au moins une itération avant de vérifier la condition. Par exemple lorsqu'on demande à l'utilisateur de saisir un nombre entier positif, on doit vérifier si le nombre est positif après que l'utilisateur ait saisi une valeur. Pour ce genre de problèmes, on utilise une boucle qui exécute le bloc de code au moins une fois avant de vérifier la condition nommée do-while que l'on retrouve dans d'autres langages de programmation. En Python, il n'y a pas de boucle do-while, mais on peut facilement simuler son comportement en utilisant une boucle while en s'assurant que la condition est vraie dès le départ.

Python

Dans cet exemple, on demande à l'utilisateur de saisir un nombre entier positif. On initialise la variable nombre = 0 pour s'assurer que la condition nombre <= 0 est vraie dès le départ. La boucle while s'exécutera au moins une fois avant de vérifier la condition.