Boucles imbriquées
Fait partie de la section Fondamentaux du Journey C++ de Coddy — leçon 48 sur 74.
Une boucle imbriquée est simplement une boucle à l'intérieur d'une autre boucle. La boucle interne effectuera toutes ses itérations pour chaque itération de la boucle externe.
Une bonne analogie pour cela est une horloge : pour chaque heure (boucle externe), l'aiguille des minutes (boucle interne) doit effectuer son cycle complet de 60 minutes.
Exemple d'une boucle imbriquée :
for (int x = 0; x < 2; x++) {
for (int y = 0; y < 2; y++) {
std::cout << x << " " << y << std::endl;
}
}
// Cela affichera :
// 0 0
// 0 1
// 1 0
// 1 1La boucle externe (x) s'exécute deux fois, et pour chacune de ces fois, la boucle interne (y) s'exécute deux fois.
Défi
DébutantÉcrivez un programme qui trouve toutes les paires de nombres dont la somme est égale à n en utilisant des nombres de 1 à n - 1.
Le programme doit afficher toutes les combinaisons possibles, y compris les paires en double dans l'ordre inverse. Par exemple, "1 5" et "5 1" doivent tous deux être affichés, car ils sont considérés comme des arrangements différents de la même paire. Les nombres peuvent également être appariés avec eux-mêmes si leur somme est égale à n.
Par exemple si n = 6, la sortie doit être :
1 5
2 4
3 3
4 2
5 1Parce que :
1 + 5 = 6
2 + 4 = 6
3 + 3 = 6
4 + 2 = 6
5 + 1 = 6Aide-mémoire
Une boucle imbriquée est une boucle à l'intérieur d'une autre boucle. La boucle interne effectue toutes ses itérations pour chaque itération unique de la boucle externe.
Structure de base d'une boucle imbriquée :
for (int x = 0; x < 2; x++) {
for (int y = 0; y < 2; y++) {
std::cout << x << " " << y << std::endl;
}
}
// Output:
// 0 0
// 0 1
// 1 0
// 1 1La boucle externe s'exécute complètement, et pour chaque itération de la boucle externe, la boucle interne parcourt toutes ses itérations.
Essayez vous-même
#include <iostream>
int main() {
int n;
std::cin >> n;
// Écrivez votre code ci-dessous
return 0;
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur moduloIncrémentation / DécrémentationPost-incrémentation / Post-décrémentationRaccourcis arithmétiquesOpérateurs de comparaisonComparaison de chaînes7Bases des entrées/sorties
Instruction coutInstruction cinSaisie de chaînes de caractèresRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux3Variables - Partie 2
Déclaration de typeConventions de nommageRécapitulatif - Initialisation des variablesType Casting - Partie 1Type Casting - Partie 26Prise de décision
L'instruction IfIf - ElseL'instruction SwitchOpérateur conditionnelRécapitulatif - If ElseIf - Else imbriqués