Objectifs
- Comprendre quand utiliser une boucle
while
- Savoir écrire une boucle avec une condition
- Apprendre à sortir d’une boucle quand une condition n’est plus vraie
- Savoir détecter les erreurs classiques : boucle infinie, oubli de mise à jour de la condition
I. Quand utiliser while
?
- La boucle
for
répète un nombre déterminé de fois. - La boucle
while
répète tant qu’une condition est vraie.
Exemple :
mot = ""
while mot != "bonjour":
mot = input("Tape 'bonjour' pour continuer : ")
Ici, on ne sait pas combien de fois l’utilisateur va devoir répondre. La boucle s’arrête quand il tape 'bonjour'.
II. Structure d’une boucle while
while condition:
# instructions répétées
- Tant que la condition est vraie, les instructions sont répétées.
- Il faut modifier une variable dans la boucle, sinon le programme risque de boucler indéfiniment.
III. Exemple simple : compteur
i = 0
while i < 5:
print("i vaut", i)
i = i + 1
Résultat :
i vaut 0
i vaut 1
i vaut 2
i vaut 3
i vaut 4
IV. Exemple avec une saisie utilisateur
reponse = ""
while reponse != "oui":
reponse = input("Tu veux continuer ? (oui/non) : ")
print("Merci !")
V. Exemple : deviner un nombre
secret = 7
tentative = int(input("Devine le nombre entre 1 et 10 : "))
while tentative != secret:
tentative = int(input("Raté ! Essaie encore : "))
print("Bravo, tu as trouvé !")
VI. Activité guidée
Objectif : demander un mot de passe
mot_de_passe = ""
while mot_de_passe != "python123":
mot_de_passe = input("Entrez le mot de passe : ")
print("Accès autorisé")
VII. Exercices élèves
Exercice 1 : mot magique
Demander un mot à l’utilisateur jusqu’à ce qu’il écrive "abracadabra"
, puis afficher un message.
Exercice 2 : compte à rebours inversé
Demander à l’utilisateur un nombre, et afficher un compte à rebours jusqu’à 0.
Exercice 3 : addition jusqu’à un total supérieur à 100
L’utilisateur entre des nombres. Tant que la somme est inférieure à 100, on continue à demander un nombre. À la fin, on affiche la somme totale.
Exercice 4 (facultatif) : jeu du juste prix
Choisir un nombre secret (par exemple 42). L’utilisateur propose des nombres jusqu’à trouver le bon. À chaque essai, on lui dit "Trop petit" ou "Trop grand".