C++ faire… while boucle avec des exemples

Qu’est-ce que la boucle do while ?

La boucle do-while parcourt une section du C++ programme plusieurs fois. Dans la boucle do-while, l'expression de test est ajoutée au bas de la boucle. Le corps de la boucle précède l’expression de test. C'est pourquoi le corps de la boucle doit s'exécuter une fois, même lorsque l'expression de test est évaluée comme fausse lors du premier test.

Quand utiliser une boucle do-while ?

La boucle do-while doit être utilisée lorsque le nombre d'itérations n'est pas fixe et que la boucle doit s'exécuter au moins une fois. Le C++ compilateur exécute d'abord le corps de la boucle avant d'évaluer la condition. Cela signifie que la boucle doit renvoyer un résultat. C'est le cas même lorsque la condition de test est évaluée comme fausse lors de la première évaluation. Puisque le corps de la boucle a déjà été exécuté, il doit renvoyer le résultat.

Syntaxe

La syntaxe de base de C++ faire la boucle while est la suivante :

do{    
//code 
}while(condition);  

La condition est l’expression du test. Cela doit être vrai pour que la boucle s'exécute. Les { et } marquent le corps de la boucle do while. Cela vient avant la condition. Par conséquent, il est exécuté avant la condition.

Comment fonctionne la boucle do-while ?

Boucle Do-Wide
C++ Faire pendant que l'organigramme

Explication du diagramme de flux :

  1. Début de la boucle do while.
  2. Le corps de la boucle do while.
  3. L’expression ou la condition de test à évaluer.
  4. Si l'expression de test est vraie, le C++ le compilateur a exécuté le corps de la boucle do while.
  5. Si l'expression du test est fausse, le C++ le compilateur exécute les instructions après le corps de la boucle.
  6. Instructions qui viennent après le corps de la boucle.

Exemple 1

#include <iostream>
using namespace std;
int main() {
	// Local variable 
	int x = 1;
	do {
		cout << "X is: " << x << endl;
		x = x + 1;
	} while (x < 5);
	return 0;
}

Sortie :

Boucle Do-Wide

Voici une capture d'écran du code :

Boucle Do-Wide

Explication du code :

  1. Y compris le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Y compris l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appel de la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée. Le { marque le début du corps de la fonction main().
  4. Un commentaire. Le C++ le compilateur ignorera cela.
  5. Déclarer une variable entière x et lui attribuer la valeur 1.
  6. Création d'une boucle do while. Le { marque le début du corps de la boucle.
  7. Pour imprimer la valeur de la variable x avec un autre texte sur la console. La fin est un C++ mot clé signifiant ligne de fin.
  8. Augmenter la valeur de x de 1 après chaque itération.
  9. Fin du corps de la boucle. L'expression de test a été ajoutée à la fin du corps de la boucle. Il teste si la valeur de x est inférieure à 5.
  10. La fonction main() doit renvoyer une valeur si le programme fonctionne correctement.
  11. Fin du corps de la fonction main().

Exemple 2

#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 :

Boucle Do-Wide

Voici une capture d'écran du code :

Boucle Do-Wide

Explication du code :

  1. Y compris le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Y compris l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appel de la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée.
  4. Le { marque le début du corps de la fonction main().
  5. Déclaration de deux variables entières, num et sum. La somme variable a été initialisée à 0.
  6. Création d'une boucle do while. Le { marque le début du corps de la boucle.
  7. Impression du texte « Entrer un numéro : » sur la console.
  8. Lire les entrées de l'utilisateur à partir de la console et stocker la valeur dans la variable num. Le cin (entrée console) est une fonction qui lit les entrées de l'utilisateur.
  9. Ajouter la valeur de num à la valeur de sum et stocker le résultat dans une somme variable.
  10. Le } marque la fin du corps de la boucle. L'expression de test a été ajoutée à la fin du corps de la boucle. Il teste si la valeur saisie par l'utilisateur pour s'assurer qu'elle n'est pas 0. Le != n'est pas égal à l'opérateur. Si l'utilisateur entre un 0, la boucle doit se terminer.
  11. Impression de la valeur de la somme variable sur la console à côté d'un autre texte.
  12. La fonction main() doit renvoyer une valeur si le programme fonctionne correctement.
  13. Fin du corps de la fonction main().

Boucle Do While imbriquée

In C++, il nous est possible de créer une boucle do-while dans une autre boucle do-whole. Cela se traduit par une boucle do-while imbriquée.

Syntaxe

do{
statement(s)
do{
statement(s)
}while(condition);
statement(s)
}while(condition);

La première instruction do désigne la partie do de la boucle externe do-while.

La deuxième instruction do désigne la partie do de la boucle interne do-while.

La première instruction while désigne la condition de test pour la boucle interne.

La deuxième instruction while indique la condition de test pour la boucle externe.

Fonctionnement de la boucle Do While imbriquée

La boucle do while imbriquée fonctionne comme suit :

Étape 1 : L'initialisation est exécutée en premier et une fois.

Étape 2 : Les instructions (le do) sont exécutées une fois.

Étape 3 : L'expression du test est une évaluation par contrôle de flux.

Étape 4 : Si c'est vrai, la boucle interne est exécutée.

Étape 5 : Les déclarations de mise à jour sont mises à jour.

Étape 6 : Le processus s'exécute à plusieurs reprises jusqu'à ce que l'expression du test devienne fausse.

Étape 7 : Lorsque l’expression de test devient fausse, la boucle interne est quittée et le contrôle passe à la boucle externe.

Étape 8 : La condition de test est à nouveau évaluée.

Étape 9 : Si c'est vrai, les instructions sont exécutées pour renvoyer faux.

Étape 10 : L'exécution de la boucle s'arrête et le contrôle passe aux instructions après la boucle.

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);
}

Sortie :

Boucle Do While imbriquée

Voici une capture d'écran du code :

Boucle Do While imbriquée

Explication du code :

  1. Y compris le fichier d'en-tête iostream dans notre code. Cela nous permettra de lire et d'écrire sur la console.
  2. Y compris l'espace de noms std afin d'utiliser ses classes et fonctions sans l'appeler.
  3. Appel de la fonction main() à l'intérieur de laquelle la logique du programme doit être ajoutée. Le { marque le début du corps de la fonction main().
  4. Déclarer une variable entière a et lui attribuer la valeur 1.
  5. Création de la boucle externe do-while. Le { marque le début du corps de la boucle externe.
  6. Déclarer une variable entière b et lui attribuer la valeur 1.
  7. Création de la boucle interne do-while. Le { marque le début du corps de la boucle interne.
  8. Pour imprimer la valeur de la variable a sur la console. Le « \n » est un caractère de nouvelle ligne qui déplace le curseur de la souris vers la ligne suivante.
  9. Augmentation de la valeur de b de 1 après chaque itération.
  10. Fin du corps de la boucle intérieure. L'expression de test a été ajoutée à la fin du corps de la boucle. Il teste si la valeur de b est inférieure ou égale à 5.
  11. Augmentation de la valeur de a de 1 après chaque itération.
  12. Fin du corps de la boucle externe. L'expression de test a été ajoutée à la fin du corps de la boucle. Il teste si la valeur de a est inférieure ou égale à 3.
  13. Fin du corps de la fonction main().

Résumé

  • La boucle do-while exécute une section de code plusieurs fois.
  • Il doit être utilisé lorsque le nombre d'itérations n'est pas fixe.
  • Dans la boucle do-while, le corps de la boucle précède l'expression du test.
  • Le corps de la boucle s'exécute au moins une fois, même si l'expression de test devient fausse.
  • Cette boucle doit être utilisée lorsque le nombre d'itérations n'est pas fixe.
  • La boucle Do while peut s'exécuter un nombre illimité de fois, à condition que la condition soit vraie.
  • La condition est évaluée une fois après chaque itération.
  • Le résultat de l’évaluation de la condition détermine l’action à entreprendre.
  • Si la condition est vraie, la boucle a exécuté le corps.
  • L’exécution de la boucle s’arrête immédiatement lorsque la condition est évaluée comme fausse.
  • Puisque le corps de la boucle do while a déjà été exécuté, il doit renvoyer le résultat.