Вкладена петля C ++ (з прикладами)

У цьому підручнику ми дізнаємося про вкладені цикли в C ++ за допомогою прикладів. Ми також дізнаємося про перерву та продовжимо в Nested Loop.

Цикл всередині іншого циклу називається вкладеним циклом. Візьмемо приклад,

Припустимо, ми хочемо повторювати кожен день тижня протягом 3 тижнів.

Для цього ми можемо створити цикл для ітерації тричі (3 тижні). А всередині циклу ми можемо створити ще один цикл для повторення 7 разів (7 днів). Ось як ми можемо використовувати вкладені цикли.

Приклад: Вкладений для циклу

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

Вихідні дані

 Тиждень: 1 день: 1 день: 2 день: 3… Тиждень: 2 день: 1 день: 2 день: 3…… 

Ми можемо створювати вкладені цикли за допомогою while і робити … поки подібним чином.

Приклад: Відображення візерунка

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

Вихідні дані

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

У цій програмі зовнішній цикл ітерації від 1до рядків.

Внутрішній цикл ітерації від 1до стовпців. Всередині внутрішнього циклу ми друкуємо символ '*'.

розірвати та продовжити Внутрішні вкладені цикли

Коли ми використовуємо оператор break всередині внутрішнього циклу, він завершує внутрішній цикл, але не зовнішній цикл. Наприклад,

Приклад: розірвати всередині вкладених циклів

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

Вихідні дані

 Тиждень: 1 день: 1 день: 2… тиждень: 2 тиждень: 3 день: 1 день: 2… 

Ця програма не запускає внутрішній цикл, коли значення i дорівнює, 2тобто не друкує дні 2-го тижня. Зовнішній цикл, який друкує тижні, не впливає.

Подібним чином, коли ми використовуємо оператор continue всередині внутрішнього циклу, він пропускає поточну ітерацію лише внутрішнього циклу. Зовнішня петля не зазнає змін. Наприклад,

Приклад: продовження всередині вкладених циклів

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

Вихідні дані

 Тиждень: 1 день: 2 день: 4 день: 6 тиждень: 2 день: 2 день: 4 день: 6 тиждень: 3 день: 2 день: 4 день: 6

Ця програма друкує лише ті дні, які є парними.

Щоразу, коли days_in_week є непарним, continueоператор пропускає цю ітерацію внутрішнього циклу.

Цікаві статті...