Menu
Coddy logo textTech

Boucles imbriquées

Fait partie de la section Fondamentaux du Journey C# de Coddy — leçon 46 sur 69.

Une boucle imbriquée est simplement une boucle à l'intérieur d'une autre boucle. La boucle interne terminera toutes ses itérations pour chaque itération unique 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++) {
		Console.WriteLine(x + " " + y);
	}
}

// Cela affichera :
// 0 0
// 0 1
// 1 0
// 1 1

La boucle externe (x) s'exécute deux fois, et pour chacune de ces fois, la boucle interne (y) s'exécute également deux fois — ce qui nous donne 4 lignes de sortie au total.

Dans l'exemple ci-dessus, Console.WriteLine() affiche chaque résultat sur une nouvelle ligne.
Si vous souhaitez afficher sans passer à une nouvelle ligne, utilisez Console.Write() à la place :

Console.Write("Hello ");
Console.Write("World");
// Sortie : Hello World

Les deux méthodes sont utiles — Console.WriteLine() ajoute un saut de ligne à la fin, tandis que Console.Write() maintient le curseur sur la même ligne.

challenge icon

Défi

Débutant

Écrivez un programme qui affiche 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 interne termine toutes ses itérations pour chaque itération de la boucle externe.

Exemple de boucles imbriquées :

for (int x = 0; x < 2; x++) {
	for (int y = 0; y < 2; y++) {
		Console.WriteLine(x + " " + y);
	}
}

// Sortie :
// 0 0
// 0 1
// 1 0
// 1 1

La boucle externe s'exécute deux fois, et pour chaque itération, la boucle interne s'exécute deux fois complètement.

Affichage de la sortie :
Console.WriteLine() affiche une valeur et passe à une nouvelle ligne.
Console.Write() affiche une valeur sans passer à une nouvelle ligne, de sorte que la sortie suivante continue sur la même ligne.

Essayez vous-même

using System;

public class Program {
    public static void Main(string[] args) {
        int width = int.Parse(Console.ReadLine());
        int height = int.Parse(Console.ReadLine());
        // Écrivez votre code ci-dessous

    }
}
quiz iconTestez-vous

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