Принципи роботи вкладених циклів
При написанні коду програми існує можливість помістити в тіло існуючого циклу ще один цикл. Поміщений цикл називається вкладеним циклом. Цикл, в який було вкладено інший, називається зовнішнім циклом, таким чином, вкладений цикл в тіло іншого буде називатися внутрішнім. Насправді кількість вкладених циклів необмежена. При потребі ми можемо створювати велику кількість циклів в тілах зовнішніх та внутрішніх циклів.
Кількість виконання всіх внутрішніх циклів не може перевищувати добутку зовнішніх та внутрішніх циклів. Для того, щоб вказати скільки разів програма має виконати дію, потрібно ввести оператор FOR. Де вказуємо кількість дій, що треба виконати. Наприклад, FOR i:=А TO В DO, де А- начальне значення змінної циклу, В- кінцеве значення змінної циклу.
Розглянемо на прикладі принцип роботи вкладених циклів.
Наприклад, нам треба зробити таблицю, що буде складатися з 3 рядків та 5 стовпців, в ній почергово числа, починаючи з одиниці. Для цього нам потрібно буде використати вкладений цикл, аби програма вивела 3 рази одну й ту саму дію :
Begin
n:=1;
for i:=1 to 5 do
Begin
For k:=1 to 3 do
Begin
Write(n, ‘ ‘);
n:= n+1;
End;
WriteLn;
End;
End.
Спочатку ми виконали дію зі стовпцями, цей цикл дозволяє нам побудувати таблицю з потрібною кількістю даних. Аби дія виконувалась три рази ми вписали в тіло першого циклу ще один цикл – внутрішній. Після цього, ми виводимо на екран таблицю, для того щоб числа в таблиці не повторювались та були упорядковані один за одним, дописуємо дію n:= n+1. Таким чином таблиця буде складатися з 3-х рядків та 5-ти стовпців.
Загалом повна кількість виконання всіх циклів буде дорівнювати : 3*5=15 разів.
На прикладі набору даної таблиці наглядно показано, що при вкладанні циклів внутрішній цикл виконується повністю від початкового до кінцевого параметру, при незмінному значенні параметру зовнішнього циклу. Після цього значення параметру внутрішнього циклу сходить до одиниці і знову виконується від початку до кінця вкладений нами цикл. Ці дії відбуваються до тих пір, доки значення параметру зовнішнього циклу не набуде значення, більшого за кінцевий, вказаного в операторі FOR зовнішнього циклу.