Boucle do-while en C++ : Syntaxe, exemples pratiques et boucles imbriquées
Qu'est-ce qu'une boucle do-while ?
La boucle do-while est une structure de contrôle de flux qui exécute un bloc de code au moins une fois et le répète tant qu'une condition spécifiée reste vraie. Contrairement à une boucle while standard, la condition est évaluée après le corps de la boucle, garantissant une exécution quel que soit la valeur initiale de la condition.
Quand utiliser une boucle do-while ?
Utilisez une boucle do-while quand vous avez besoin :
- D'au moins une exécution du corps de la boucle.
- Que le nombre d'itérations soit déterminé à l'exécution.
- D'une approche « invite d'abord », comme la lecture d'entrée utilisateur jusqu'à une valeur sentinelle.
Syntaxe
do { // code } while (condition);
Le corps de la boucle précède la condition while, donc le compilateur exécute d'abord le corps puis vérifie la condition pour décider s'il faut itérer à nouveau.
Comment ça fonctionne
Étapes du diagramme de flux :
- Démarrer la boucle.
- Exécuter le corps de la boucle.
- Évaluer la condition.
- Si vraie, répéter depuis l'étape 2.
- Si fausse, sortir de la boucle et continuer avec les instructions suivantes.
Exemple 1 : Comptage avec une boucle do-while
#include <iostream>
using namespace std;
int main() {
int x = 1;
do {
cout << "X is: " << x << endl;
++x;
} while (x < 5);
return 0;
}
Sortie :

La boucle affiche les valeurs de 1 à 4 car la condition x < 5 devient fausse après que x atteint 5.
Exemple 2 : Somme de nombres jusqu'à l'entrée de zéro
#include <iostream>
using namespace std;
int main() {
int num, sum = 0;
do {
cout << "Enter a number: ";
cin >> num;
sum += num;
} while (num != 0);
cout << "Sum is " << sum;
return 0;
}
Sortie :

Dans cet exemple, la boucle continue jusqu'à ce que l'utilisateur entre 0, assurant qu'au moins un nombre est traité.
Boucles do-while imbriquées
Placer une boucle do-while à l'intérieur d'une autre crée une structure imbriquée, utile pour des itérations multidimensionnelles comme l'affichage d'une grille ou des calculs composés.
Syntaxe
do { // corps externe
do { // corps interne
} while (condition_interne);
} while (condition_externe);
Comment ça fonctionne
L'exécution se déroule comme suit :
- Initialiser les variables externes.
- Entrer dans le corps de la boucle externe.
- Entrer dans le corps de la boucle interne.
- Après chaque itération interne, évaluer
condition_internepour décider de continuer la boucle interne. - Une fois la boucle interne terminée, mettre à jour les variables externes et évaluer
condition_externepour décider de répéter la boucle externe.
Exemple
#include <iostream>
using namespace std;
int main() {
int a = 1;
do {
int b = 1;
do {
cout << a << "\n";
++b;
} while (b <= 3);
++a;
} while (a <= 3);
return 0;
}
Sortie :

Points clés à retenir
- La boucle do-while garantit au moins une exécution du corps de la boucle.
- Utilisez-la quand le nombre d'itérations est inconnu jusqu'à l'exécution.
- La condition de la boucle est vérifiée après le corps, pas avant.
- Les boucles imbriquées permettent des itérations multi-niveaux, mais attention à la complexité et à la lisibilité.
Langue C
- Maîtriser les pointeurs en C++ : Concepts, exemples et applications pratiques
- Maîtriser le type char en C++ : Déclaration, ASCII et techniques de conversion
- Surcharge d'opérateurs en C++ : Guide pratique avec exemples de code
- Les structures en C++ expliquées avec un exemple pratique
- Maîtriser std::list en C++ : Syntaxe, Fonctions et Exemples Pratiques
- Les Fonctions en C++ Expliquées avec des Exemples de Code Pratiques
- Maîtriser les Collections C# : Tutoriel Pratique avec Exemples Réels
- Boucles While vs Do-While : Comparaison claire avec exemples pratiques
- Maîtriser str.count() de Python : Compter caractères et sous-chaînes avec exemples