3èmeArithmétique

La boucle « tant que »

18 min5 exercicesSéquence 1.13ème

Vidéo disponible dans la version Premium

Durée : 18 min

Introduction

En 4ème, on a utilisé la boucle « répéter nn fois », où l'on connaît à l'avance le nombre exact de répétitions. Mais parfois, on ne sait pas combien de répétitions seront nécessaires : on veut simplement continuer tant qu'une condition reste vraie.

La boucle « tant que »

📌 Méthode

La boucle tant que (condition) faire ... fin tant que répète les instructions à l'intérieur aussi longtemps que la condition est vraie. Avant chaque répétition, on teste la condition : si elle est fausse, la boucle s'arrête immédiatement.

Différence essentielle avec « répéter nn fois » :


BoucleNombre de répétitionsCondition d'arrêt
|---|---|---|


Répéter nn foisConnu à l'avanceAprès nn tours
Tant queInconnu à l'avanceQuand la condition devient fausse

⚠️ Attention : il faut toujours s'assurer que la condition deviendra fausse à un moment donné (par exemple en modifiant une variable à chaque tour), sinon la boucle ne s'arrête jamais (boucle infinie).

Exemple de structure

variable nn prend la valeur 11

tant que n<5n < 5 faire :

\quad afficher nn

\quad nn prend la valeur n+1n+1

fin tant que

Exemples

✅ Exemple simple — Compter jusqu'à un seuil

On initialise n=0n=0. Tant que n<4n < 4, on affiche nn puis on l'augmente de 11.

Déroulement : n=0n=0 (affiché, 0<40<4) n=1\to n=1 (affiché, 1<41<4) n=2\to n=2 (affiché, 2<42<4) n=3\to n=3 (affiché, 3<43<4) n=4\to n=4 : la condition 4<44<4 est fausse, la boucle s'arrête.

Le programme affiche : 0,1,2,30, 1, 2, 3.

📘 Exemple intermédiaire — Trouver le premier multiple de 7 supérieur à 50

On initialise n=0n=0. Tant que n50n \leq 50, on ajoute 77 à nn.

Déroulement (valeurs de nn) : 07142128354249560 \to 7 \to 14 \to 21 \to 28 \to 35 \to 42 \to 49 \to 56.

Dès que n=56n=56, la condition n50n \leq 50 devient fausse : la boucle s'arrête. Réponse : 5656 est le premier multiple de 77 strictement supérieur à 5050.

🔴 Exemple avancé — Boucle infinie à éviter

variable nn prend la valeur 11

tant que n>0n > 0 faire :

\quad afficher nn

fin tant que

Ici, nn reste toujours égal à 11 (on ne le modifie jamais à l'intérieur de la boucle), donc la condition n>0n>0 est toujours vraie : la boucle ne s'arrêtera jamais. Il manque une instruction du type « nn prend la valeur n1n-1 » pour que nn finisse par atteindre 00.

À retenir

- La boucle « tant que » répète des instructions tant qu'une condition reste vraie, sans connaître à l'avance le nombre de répétitions.
- La condition est testée avant chaque répétition : dès qu'elle est fausse, la boucle s'arrête.
- Il faut toujours faire évoluer une variable à l'intérieur de la boucle pour garantir que la condition finira par être fausse, sinon on obtient une boucle infinie.

Exercices

Quelle est la différence principale entre « répéter nn fois » et « tant que » ?

Une boucle « tant que » dont la condition reste toujours vraie est une boucle infinie.

Suivez votre progression

Connectez-vous pour sauvegarder votre avancement et gagner des XP.

Se connecter