Les boucles WHILE

1. Principe de la Boucle while

La boucle while (tant que) est la deuxième structure de répétition essentielle. Elle permet d'exécuter un bloc de code de manière répétée tant qu'une certaine condition est satisfaite. La boucle s'arrête dès que la condition devient fausse. 

Structure et Logique
  1. Initialisation : Une variable (appelée compteur ou sentinelle) doit être créée avant la boucle.
  2. Test : La condition est évaluée.
    • Si la condition est vraie (True), le bloc de code est exécuté.
    • Si la condition est fausse (False), la boucle s'arrête et le programme passe à la suite.
  3. Mise à jour : À l'intérieur du bloc de code, il doit y avoir une instruction qui garantit que la condition finira par devenir fausse (sinon, c'est une boucle infinie).

2. Syntaxe et Mécanisme

Syntaxe :
# 1. Initialisation (variable de contrôle)
compteur = 0

while <condition_booléenne>:
    # Bloc de code à répéter
    print("La condition est encore vraie.")
    
    # 2. Mise à jour (pour éviter la boucle infinie)
    compteur = compteur + 1 # ou compteur += 1
Exemple Classique : Compter 
Voici comment reproduire le comportement de for i in range(5) en utilisant une boucle while :

Exemple Python

3. Le Danger de la Boucle Infinie

Une boucle infinie se produit lorsque la condition de sortie n'est jamais atteinte (la condition reste toujours True). C'est l'erreur la plus courante avec while
Exemple de boucle infinie :
i = 10 

while i > 0: # La condition est VRAIE au départ
    print("Je ne m'arrêterai jamais !")
    # Oubli de la mise à jour ! La valeur de i reste 10. La condition reste toujours vraie.
Pour arrêter une boucle infinie sur un ordinateur, il faut souvent interrompre le programme manuellement (par exemple, en appuyant sur Ctrl+C dans la console).

4. Usage Principal : Répétition non bornée

La grande force de la boucle while est de gérer les situations où on ne sait pas à l'avance combien de fois le code doit s'exécuter. 
Elle est parfaite pour :
  • Demander à l'utilisateur de recommencer jusqu'à ce qu'une saisie soit valide.
  • Simuler des jeux ou des processus qui durent tant qu'une condition (ex: point de vie > 0) est remplie.
Exemple : 
Saisie sécurisée On veut s'assurer que l'utilisateur entre bien un nombre positif.

Exemple Python

5. Mots-clés de Contrôle (Avancé)

Parfois, vous devez modifier le déroulement normal de la boucle en cours d'exécution.

A. break (Interruption)

Le mot-clé break permet de sortir immédiatement de la boucle (qu'elle soit for ou while), même si la condition de la boucle est toujours True.

Exemple Python

B. continue (Sauter le tour)

Le mot-clé continue permet de sauter le reste des instructions du tour de boucle actuel et de passer directement à l'itération suivante (retestant la condition while).

Exemple Python

Fiches de révision

Fiche : Boucle While