Bucle imbricate în C #: for, while, do-while (Cu exemple)

În acest articol, vom afla despre buclele imbricate în C #. Vom învăța să folosim buclele imbricate pentru, în timp ce și în timp ce într-un program.

O buclă într-o altă buclă se numește buclă imbricată. Așa arată o buclă imbricată:

 Outer-Loop (// corpul buclei exterioare Inner-Loop (// corpul buclei interioare)………) 

După cum puteți vedea, bucla exterioară închide bucla interioară . Bucla interioară este o parte a buclei exterioare și trebuie să înceapă și să se termine în corpul buclei exterioare.

La fiecare iterație a buclei exterioare, bucla interioară este executată complet.

Cuibărit pentru buclă

O buclă pentru interiorul alteia pentru buclă se numește imbricată pentru buclă.

De exemplu:

 for (int i = 0; i <5; i ++) (// corpul exterior pentru buclă pentru (int j = 0; j <5; j ++) (// corpul interior pentru buclă) // corpul exterior pentru buclă ) 

Exemplul 1: imbricat pentru buclă

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

Când rulăm programul, ieșirea va fi:

 Bucla exterioară rulează de 5 ori Bucla interioară rulează de 25 de ori

În acest program, bucla exterioară rulează de 5 ori. De fiecare dată când rulează bucla exterioară, bucla interioară rulează de 5 ori, făcând-o să ruleze de 25 de ori în total.

Exemplul 2: imbricat pentru modelul tipăririi în buclă

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

Când rulăm programul, ieșirea va fi:

 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5

Buclă imbricată în timp ce

O buclă while în interiorul altei bucle while se numește buclă while imbricată.

De exemplu:

 while (condition-1) (// corpul buclei while while while (condition-2) (// corpul buclei while while) // corpul buclei while while) 

Exemplul 3: imbricat în timp ce bucla

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

Când rulăm programul, ieșirea va fi:

 (0,0) (0,1) (1,0) (1,1)

Buclă imbricată în timp ce se face

O buclă do-while în interiorul altei bucle do-while se numește buclă do-while imbricată.

De exemplu:

 do (// corpul buclei exterioare while do (// corpul buclei interioare while) while (condiția-2); // corpul buclei exterioare while) while (condiția-1); 

Exemplul 4: Buclă imbricată cu 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); ) ) ) 

Când rulăm programul, ieșirea va fi:

 (0,0) (0,1) (1,0) (1,1)

Diferite bucle interioare și exterioare imbricate

Nu este obligatoriu să cuibărești același tip de buclă. Putem pune o buclă for într-o buclă while sau o buclă do-while într-o buclă for.

Exemplul 5: C # Buclă imbricată: diferite bucle interioare și exterioare

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

Când rulăm programul, ieșirea va fi:

 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5

În programul de mai sus, o buclă for este plasată într-o buclă while. Putem folosi diferite tipuri de bucle în interiorul unei bucle.

Articole interesante...