C ++ Nested Loop (mit Beispielen)

In diesem Tutorial lernen wir anhand von Beispielen verschachtelte Schleifen in C ++ kennen. Wir werden auch etwas über Pause lernen und in Nested Loop weitermachen.

Eine Schleife innerhalb einer anderen Schleife wird als verschachtelte Schleife bezeichnet. Nehmen wir ein Beispiel,

Angenommen, wir möchten jeden Wochentag 3 Wochen lang durchlaufen.

Um dies zu erreichen, können wir eine Schleife erstellen, die dreimal (3 Wochen) wiederholt wird. Und innerhalb der Schleife können wir eine weitere Schleife erstellen, die 7 Mal (7 Tage) wiederholt wird. So können wir verschachtelte Schleifen verwenden.

Beispiel: Verschachtelt für Schleife

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

Ausgabe

 Woche: 1 Tag: 1 Tag: 2 Tag: 3… Woche: 2 Tag: 1 Tag: 2 Tag: 3 …… 

Auf ähnliche Weise können wir verschachtelte Schleifen mit while und do … while erstellen.

Beispiel: Anzeigen eines Musters

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

Ausgabe

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

In diesem Programm iteriert die äußere Schleife von 1zu Zeilen.

Die innere Schleife iteriert von 1zu Spalten. Innerhalb der inneren Schleife drucken wir das Zeichen '*'.

brechen Sie und setzen Sie Inside Nested Loops fort

Wenn wir eine break-Anweisung innerhalb der inneren Schleife verwenden, wird die innere Schleife beendet, nicht jedoch die äußere Schleife. Beispielsweise,

Beispiel: Unterbrechen Sie verschachtelte Schleifen

 #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) ( // break during the 2nd week if (i == 2) ( break; ) cout << " Day:" << j << endl; ) ) )

Ausgabe

 Woche: 1 Tag: 1 Tag: 2… Woche: 2 Woche: 3 Tag: 1 Tag: 2… 

Dieses Programm führt die innere Schleife nicht aus, wenn der Wert von i ist, 2dh es werden nicht die Tage der 2. Woche gedruckt. Die äußere Schleife, die die Wochen druckt, bleibt davon unberührt.

Wenn wir eine continue-Anweisung innerhalb der inneren Schleife verwenden, wird in ähnlicher Weise nur die aktuelle Iteration der inneren Schleife übersprungen. Die äußere Schleife bleibt unberührt. Beispielsweise,

Beispiel: Fahren Sie in verschachtelten Schleifen fort

 #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) ( // continue if the day is an odd number if (j % 2 != 0) ( continue; ) cout << " Day:" << j << endl; ) ) )

Ausgabe

 Woche: 1 Tag: 2 Tag: 4 Tag: 6 Woche: 2 Tag: 2 Tag: 4 Tag: 6 Woche: 3 Tag: 2 Tag: 4 Tag: 6

Dieses Programm druckt nur die Tage, die gerade sind.

Immer wenn die days_in_week ungerade ist, continueüberspringt die Anweisung diese Iteration der inneren Schleife.

Interessante Beiträge...