Fiche d’Exercices : La Boucle while
Rappel : Boucle while
La boucle while répète un bloc d’instructions TANT QUE une condition est vraie (True).
Attention : Si la condition ne devient jamais fausse, la boucle est ”infinie”.
Exercice 1
Analyse de compteur
Qu’affiche le script suivant dans la console ?
i = 0
while i < 5:
print ( i )
i = i + 1
Affichage : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exercice 2
Surveillance de température
On souhaite simuler la surveillance d’un composant qui chauffe. Complétez le code pour que la
boucle s’arrête dès que la température atteint ou dépasse 50 degrés.
temp = 20
while . . . . .. . . . . . . . . . . . . . . . . . . :
print ( " Temperature ␣ actuelle ␣ : " , temp )
# On simule la chauffe (+5 degres a chaque tour )
temp = temp + 5
print ( " Alerte ␣ ! ␣ Seuil ␣ critique ␣ atteint . " )
Exercice 3
Attente d’une saisie correcte Le script suivant doit demander un mot de passe à un technicien
jusqu’à ce qu’il saisisse le bon code (”CIEL2026”).
code = " "
while code != " ..... ...... ...... " :
code = input ( " Entrez ␣ le ␣ code ␣ d ’ acces ␣ : ␣ " )
print ( " Acces ␣ autorise . " )
1
Exercice 4
Analyse de boucle infinie (Piege) Pourquoi le script suivant ne s’arrêtera-t-il jamais ? Com-
ment le corriger ?
compteur = 10
while compteur > 0:
print ( " Decompte ␣ : " , compteur )
# Ligne manquante ici ?
Explication : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Correction : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exercice 5
Application Réseau Écrivez un script qui demande un nombre de tentatives de connexion. Tant
que le nombre de tentatives est inférieur à 3, on affiche ”Essai de connexion...”. À chaque essai, on
incrémente le compteur.
Exercice 6
Richesse
Anna dispose aujourd’hui de 48 e. Chaque jour, elle gagne la même somme : 147 e. Écrire un
algorithme qui détermine une solution aux problèmes suivants :
• Dans combien de jours disposera-t-elle de 10 000 e ?
• Exprimer ce délai en nombre de mois (en prenant 1 mois = 30 jours pour simplifier) et de jours.
Exercice 7
Plan d’épargne sur Livret
Paul dispose aujourd’hui d’une somme de 1 200 e, qu’il place sur son livret à un taux mensuel de
1,25 % (intérêts versés le 1er du mois). Chaque mois, il calcule son nouveau solde grâce à la formule :
soldenouveau = 1, 0125 × soldeancien .
Écrire un algorithme qui détermine :
• Dans combien de mois il disposera de 2 000 esur son livret ?
• Exprimer ce délai en nombre d’années et de mois.
Exercice 8
Certification de mot de passe
1. Écrire un algorithme qui demande un mot de passe et continue de le demander tant que la
réponse ne contient pas au moins un chiffre.
2. Modifier l’algorithme pour qu’il vérifie les conditions suivantes :
— Au minimum un chiffre ;
— Au minimum 10 caractères ;
— Au minimum une majuscule ;
— Au moins un caractère spécial parmi : *![]{}()!:;,?
3. Précision des erreurs : Modifier le script pour qu’il signale précisément quel critère n’est
pas rempli. Si plusieurs problèmes existent, ils doivent tous être cités sur des lignes différentes.
2
Exercice 9
Certifier que a > b
Écrire un algorithme qui demande deux nombres positifs a et b.
• Tant que la condition a > b est fausse, afficher ”impossible” et redemander les deux nombres.
• Si la condition est vraie, afficher ”Merci !”.
Exercice 10
Division Euclidienne
On donne deux entiers positifs a et b avec a ≥ b. Écrire un algorithme qui calcule le quotient et
le reste :
• Utiliser uniquement des soustractions pour déterminer le quotient q (nombre maximal de fois
que l’on peut soustraire b de a en restant positif).
• Déterminer le reste r par la formule : r = a − q × b.