C ++ ligzdota Lop (ar piemēriem)

Šajā apmācībā mēs uzzināsim par ligzdotajām cilpām C ++. Mēs iemācīsimies izmantot ligzdoto, kamēr un darīt … kamēr programmas cilpas.

Citu cilpu cilpu sauc par ligzdotu cilpu. Ņemsim piemēru,

Pieņemsim, ka mēs vēlamies 3 nedēļas turpināt katru nedēļas dienu.

Lai to panāktu, mēs varam izveidot ligzdotu cilpu, lai atkārtotu trīs reizes (3 nedēļas). Cilpas iekšpusē mēs varam izveidot vēl vienu cilpu, lai atkārtotu 7 reizes (7 dienas). Piemēram,

Piemērs: ligzdots lokam

 // C++ program to display 7 days of 3 weeks #include using namespace std; int main() ( int weeks = 3, days_in_week = 7; for (int i = 1; i <= weeks; ++i) ( cout << "Week: " << i << endl; for (int j = 1; j <= days_in_week; ++j) ( cout << " Day:" << j << endl; ) ) return 0; )

Rezultāts

 Nedēļa: 1 diena: 1 diena: 2 diena: 3 … nedēļa: 2 diena: 1 diena: 2 diena: 3…… 

Mēs varam izveidot ligzdotas cilpas ar while un do… kamēr līdzīgi.

Piemērs: modeļa parādīšana

 // C++ program to display a pattern // with 5 rows and 3 columns #include using namespace std; int main() ( int rows = 5; int columns = 3; for (int i = 1; i <= rows; ++i) ( for (int j = 1; j <= columns; ++j) ( cout << "* "; ) cout << endl; ) return 0; )

Rezultāts

 * * * * * * * * * * * * * * * 

Šajā programmā ārējā cilpa atkārtojas no i == 1līdz i == rows.

Iekšējā cilpa atkārtojas no j == 1līdz j == columns. Iekšējās cilpas iekšpusē mēs izdrukājam rakstzīmi '*'.

pārtrauciet un turpiniet Inside Nested Loops

Kad mēs izmantojam pārtraukuma paziņojumu iekšējās cilpas iekšpusē, tas pārtrauc iekšējo cilpu, bet ne ārējo cilpu. Piemēram,

 int weeks = 3, days_in_week = 7; for (int i = 1; i <= weeks; ++i) ( cout << "Week: " << i << endl; for (int j = 1; j <= days_in_week; ++j) ( // break during the 2nd week if (i == 2) ( break; ) cout << " Day:" << j << endl; ) )

Rezultāts

 Nedēļa: 1 diena: 1 diena: 2 … nedēļa: 2 nedēļa: 3 diena: 1 diena: 2… 

Šī programma nedarbina iekšējo cilpu, ja i vērtība ir, 2ti, tā nedrukā 2. nedēļas dienas. Ārējā cilpa, kas izdrukā nedēļas, netiek ietekmēta.

Līdzīgi, ja iekšējās cilpas iekšpusē izmantojam turpinājuma paziņojumu, tas izlaiž tikai iekšējās cilpas pašreizējo atkārtojumu. Ārējā cilpa nav ietekmēta. Piemēram,

 int weeks = 3, days_in_week = 7; for (int i = 1; i <= weeks; ++i) ( cout << "Week: " << i << endl; for (int j = 1; j <= days_in_week; ++j) ( // continue if the day is an odd number if (j%2 != 0) ( continue; ) cout << " Day:" << j << endl; ) )

Rezultāts

 Nedēļa: 1 diena: 2 diena: 4 diena: 6 nedēļa: 2 diena: 2 diena: 4 diena: 6 nedēļa: 3 diena: 2 diena: 4 diena: 6

Šī programma drukā tikai tās dienas, kas ir vienmērīgas.

Ikreiz, kad dienas_nedēļā ir nepāra, continuepaziņojums izlaiž iekšējās cilpas atkārtojumu.

Interesanti raksti...