U ovom ćemo članku naučiti o ugniježđenim petljama u C #. Naučit ćemo koristiti ugniježđene petlje za, while i do-while u programu.
Petlja unutar druge petlje naziva se ugniježđena petlja. Ovako izgleda ugniježđena petlja:
Vanjska petlja (// tijelo unutarnje petlje vanjske petlje (// tijelo unutarnje petlje)………)
Kao što vidite, vanjska petlja zatvara unutarnju petlju . Unutarnja petlja dio je vanjske petlje i mora započeti i završiti unutar tijela vanjske petlje.
Na svakoj iteraciji vanjske petlje, unutarnja se petlja izvršava u potpunosti.
Ugniježđeno za petlju
Petlja for unutar druge for petlje naziva se ugniježđena petlja for.
Na primjer:
for (int i = 0; i <5; i ++) (// tijelo vanjske for petlje for (int j = 0; j <5; j ++) (// tijelo unutarnje for petlje) // tijelo vanjske for petlje )
Primjer 1: ugniježđeno za petlju
using System; namespace Loop ( class NestedForLoop ( public static void Main(string() args) ( int outerLoop = 0, innerLoop = 0; for (int i=1; i<=5; i++) ( outerLoop ++; for (int j=1; j<=5; j++) ( innerLoop++; ) ) Console.WriteLine("Outer Loop runs (0) times", outerLoop); Console.WriteLine("Inner Loop runs (0) times", innerLoop); ) ) )
Kada pokrenemo program, izlaz će biti:
Vanjska petlja radi 5 puta Unutarnja petlja radi 25 puta
U ovom programu vanjska petlja radi 5 puta. Svaki put kada se vanjska petlja pokrene, unutarnja se pet puta izvodi pet puta, čineći je ukupno 25 puta.
Primjer 2: ugniježđeno za uzorak petlje za ispis
using System; namespace Loop ( class NestedForLoop ( public static void Main(string() args) ( for (int i=1; i<=5; i++) ( for (int j=1; j<=i; j++) ( Console.Write(j + " "); ) Console.WriteLine(); ) ) ) )
Kada pokrenemo program, izlaz će biti:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Ugnježđena while petlja
Petlja while unutar druge while petlje naziva se ugniježđena while petlja.
Na primjer:
while (uvjet-1) (// tijelo vanjske while petlje while (uvjet-2) (// tijelo unutarnje while petlje) // tijelo vanjske while petlje)
Primjer 3: Ugniježđeno dok petlja
using System; namespace Loop ( class NestedWhileLoop ( public static void Main(string() args) ( int i=0; while (i<2) ( int j=0; while (j<2) ( Console.Write("((0),(1)) ", i,j); j++; ) i++; Console.WriteLine(); ) ) ) )
Kada pokrenemo program, izlaz će biti:
(0,0) (0,1) (1,0) (1,1)
Ugnježđena petlja do-while
Do-while petlja unutar druge do-while petlje naziva se ugniježđena do-while petlja.
Na primjer:
do (// tijelo vanjske while petlje do (// tijelo unutarnje while petlje) while (uvjet-2); // tijelo vanjske while petlje) while (uvjet-1);
Primjer 4: Ugnježđena petlja do-while
using System; namespace Loop ( class NestedWhileLoop ( public static void Main(string() args) ( int i=0; do ( int j=0; do ( Console.Write("((0),(1)) ", i,j); j++; ) while (j<2); i++; Console.WriteLine(); ) while (i<2); ) ) )
Kada pokrenemo program, izlaz će biti:
(0,0) (0,1) (1,0) (1,1)
Različite unutarnje i vanjske ugniježđene petlje
Nije obavezno gnijezditi istu vrstu petlje. Možemo staviti for petlju unutar while petlje ili do-while petlju unutar for petlje.
Primjer 5: C # ugniježđena petlja: Različite unutarnje i vanjske petlje
using System; namespace Loop ( class NestedLoop ( public static void Main(string() args) ( int i=1; while (i<=5) ( for (int j=1; j<=i; j++) ( Console.Write(i + " "); ) Console.WriteLine(); i++; ) ) ) )
Kada pokrenemo program, izlaz će biti:
1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
U gore navedenom programu, for petlja je smještena unutar while petlje. Unutar petlje možemo koristiti različite vrste petlje.