Utiliser une boucle répéter jusqu'à

Définition, méthode pas à pas, exemples corrigés et exercice type Brevet.

📚 Niveau 3ème ⏱ Lecture : 4 min ✅ Tombe au Brevet

La boucle répéter jusqu'à (ou do-while dans certains langages de programmation) est une structure de contrôle qui exécute un bloc d'instructions au moins une fois, puis répète ce bloc tant qu'une condition spécifiée n'est pas remplie (c'est-à-dire tant que la condition est fausse). Dès que la condition devient vraie, la boucle s'arrête.

Sa structure générale est la suivante :
RÉPÉTER
Instructions à exécuter
JUSQU'À (Condition)

Contrairement à la boucle tant que, la condition est testée après l'exécution des instructions.

Organigramme : boucle repeter
💡 Bon réflexe : Toujours s'assurer que les instructions à l'intérieur de la boucle modifient des éléments qui finiront par rendre la condition d'arrêt vraie, pour éviter les boucles infinies.
1

1. Identifier le besoin d'une exécution initiale

Déterminez si le bloc d'instructions doit impérativement être exécuté au moins une fois, avant même de vérifier une quelconque condition. Si oui, la boucle 'répéter jusqu'à' est appropriée.

2

2. Définir la condition d'arrêt

Formulez la condition qui, lorsqu'elle devient vraie, doit mettre fin à la répétition. C'est le critère qui indique que le travail est terminé ou que le résultat souhaité est atteint.

3

3. Écrire les instructions à répéter

Listez toutes les actions qui doivent être exécutées à chaque itération de la boucle. Ces instructions doivent généralement modifier des variables qui influent sur la condition d'arrêt, afin d'éviter une boucle infinie.

4

4. Assembler la boucle

Placez les instructions entre les mots-clés RÉPÉTER et JUSQU'À, puis ajoutez la condition d'arrêt après JUSQU'À.

Imaginons un programme qui demande à l'utilisateur de saisir un nombre entier entre $1$ et $10$. La saisie doit être répétée tant que le nombre n'est pas valide.

1
L'utilisateur saisit $0$
✗ NonLa condition '$nombre \geq 1$ ET $nombre \leq 10$' est fausse ($0$ n'est pas $\geq 1$). La boucle continue.
2
L'utilisateur saisit $12$
✗ NonLa condition '$nombre \geq 1$ ET $nombre \leq 10$' est fausse ($12$ n'est pas $\leq 10$). La boucle continue.
3
L'utilisateur saisit $5$
La condition '$nombre \geq 1$ ET $nombre \leq 10$' est vraie ($5$ est bien entre $1$ et $10$). La boucle s'arrête.

Voici l'algorithme correspondant :

ALGORITHME SaisieValide
VARIABLES
nombre EN ENTIER
DÉBUT
RÉPÉTER
AFFICHER "Veuillez saisir un nombre entre 1 et 10 : "
LIRE nombre
JUSQU'À (nombre $\geq 1$ ET nombre $\leq 10$)
AFFICHER "Vous avez saisi : ", nombre
FIN

  1. Mal formuler la condition d'arrêt ou d'oublier de modifier les variables qui influencent cette condition à l'intérieur de la boucle. Si la condition ne devient jamais vraie, la boucle ne s'arrêtera jamais (boucle infinie).
  2. Exemple : RÉPÉTER AFFICHER "Bonjour" JUSQU'À (faux). Cette boucle affichera "Bonjour" indéfiniment car la condition 'faux' ne sera jamais vraie.

Reçois 3 fiches gratuites pour préparer le Brevet

Les 3 fiches les plus importantes du programme de 3ème, en PDF prêt à imprimer. Offertes par Adil.

Pas de spam. Désinscription en un clic.

Écrivez un algorithme utilisant une boucle 'répéter jusqu'à' qui demande à l'utilisateur de deviner un nombre secret (fixé à $7$). Le programme doit afficher "Trop petit !" ou "Trop grand !" après chaque essai, et "Bravo, vous avez trouvé !" lorsque le nombre est deviné.

ALGORITHME DevineLeNombre
VARIABLES
nombreSecret EN ENTIER
essai EN ENTIER
DÉBUT
nombreSecret $\leftarrow 7$
RÉPÉTER
AFFICHER "Devinez le nombre secret (entre 1 et 10) : "
LIRE essai
SI essai < nombreSecret ALORS
AFFICHER "Trop petit !"
SINON SI essai > nombreSecret ALORS
AFFICHER "Trop grand !"
FIN SI
JUSQU'À (essai = nombreSecret)
AFFICHER "Bravo, vous avez trouvé ! Le nombre était bien ", nombreSecret
FIN

Questions fréquentes

Quelle est la différence principale avec une boucle 'tant que' ?
La différence essentielle est que la boucle 'répéter jusqu'à' garantit que le bloc d'instructions sera exécuté au moins une fois, car la condition est testée après l'exécution. Une boucle 'tant que' (while) teste la condition avant la première exécution ; si la condition est fausse dès le départ, le bloc ne sera jamais exécuté.
Quand utiliser 'répéter jusqu'à' plutôt que 'tant que' ?
Utilisez 'répéter jusqu'à' lorsque vous savez que le code doit s'exécuter au moins une fois, typiquement pour des saisies utilisateur qui doivent être validées, ou pour des traitements où une première étape est toujours nécessaire avant de vérifier si d'autres itérations sont requises.
Peut-on avoir une boucle 'répéter jusqu'à' sans instructions ?
Théoriquement oui, mais cela n'aurait aucun intérêt pratique. Le but d'une boucle est de répéter des instructions. Si le bloc est vide, la boucle ne fait rien d'utile et peut potentiellement créer une boucle infinie si la condition n'est jamais modifiée.
La condition d'arrêt peut-elle être complexe ?
Oui, la condition peut être aussi complexe que nécessaire, utilisant des opérateurs logiques (ET, OU, NON) pour combiner plusieurs sous-conditions. Par exemple : JUSQU'À (saisieValide ET nombrePair).

Votre enfant bloque sur ce chapitre ?

Adil explique la méthode en 1 séance. Cours en ligne disponibles partout en France à 20€/h.

📞 Être rappelé gratuitement Avance Immédiate →