Boucles imbriquées
Fait partie de la section Fondamentaux du Journey Java de Coddy — leçon 48 sur 73.
Une boucle imbriquée est simplement une boucle à l'intérieur d'une autre boucle. La boucle intérieure effectuera toutes ses itérations pour chaque itération unique de la boucle extérieure.
Une bonne analogie pour cela est une horloge : pour chaque heure (boucle externe), l'aiguille des minutes (boucle interne) doit compléter 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++) {
System.out.println(x + " " + y);
}
}
// This will output:
// 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 imprime un rectangle d'astérisques (*) avec une largeur et une hauteur données.
Entrée : Deux entiers : width et height
Par exemple :
Si width = 5 et height = 3, la sortie devrait être :
*****
*****
*****Si width = 4 et height = 6, la sortie devrait être :
****
****
****
****
****
****Aide-mémoire
Une boucle imbriquée est une boucle à l'intérieur d'une autre boucle. La boucle intérieure effectue toutes ses itérations pour chaque itération unique de la boucle extérieure.
Structure de base d'une boucle imbriquée :
for (int x = 0; x < 2; x++) {
for (int y = 0; y < 2; y++) {
System.out.println(x + " " + y);
}
}
// Output:
// 0 0
// 0 1
// 1 0
// 1 1La boucle extérieure s'exécute complètement, et pour chaque itération de la boucle extérieure, la boucle intérieure effectue toutes ses itérations.
Essayez vous-même
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int width = scanner.nextInt();
int height = scanner.nextInt();
// Écrivez votre code ci-dessous
}
}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înes7Entrées/Sorties de base
Méthodes System.outFormatage de la sortieClasse ScannerRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux10Méthodes (Fonctions)
Déclaration de méthodesParamètres de méthodeTypes de retourSurcharge de méthodesRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationMéthodes Void13Opérations sur les chaînes
Méthodes de chaînes, partie 1Méthodes de chaînes, partie 2Formatage de chaînesComparaison de chaînes5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateurs logiques, partie 43Variables Partie 2
ConstantesConventions de nommageRécapitulatif - Initialisation des variablesType Casting Partie 1Type Casting Partie 26Prise de décision
Instruction IfIf - ElseInstruction SwitchOpérateur ternaireRécapitulatif - If ElseIf - Else imbriqués9Boucles
Boucle For - Partie 1Boucle WhileBoucle Do WhileBreakContinueBoucle For - Partie 2Boucles imbriquéesBoucle infinieRécapitulatif - Entrée dynamique12Parcourir les tableaux
Utilisation de la boucle forBoucle for amélioréeOpérations courantes sur les tableaux