Вложенные циклы
💻 Информатика · 8 класс
Что такое вложенные циклы
Вложенный цикл — это цикл, который целиком находится внутри тела другого цикла. Внешний цикл называют наружным, а тот, что записан внутри его тела, — внутренним. Работают они согласованно: при каждом отдельном повторении наружного цикла внутренний цикл выполняется полностью, от первого своего шага до последнего, и только потом наружный цикл переходит к следующему повторению.
Как считать число повторений
Понимать, сколько раз выполнятся команды, очень важно. Если наружный цикл выполняется m раз, а внутренний — n раз, то команды, записанные внутри внутреннего цикла, выполнятся m * n раз. Это произведение помогает заранее оценить, сколько действий сделает программа.
| Наружный | Внутренний | Всего шагов |
|---|---|---|
| 3 | 4 | 12 |
| 5 | 5 | 25 |
| 10 | 2 | 20 |
Где применяют вложенные циклы
Вложенные циклы нужны всякий раз, когда приходится перебирать сразу две величины, изменяющиеся независимо.
- Перебор всех пар значений — например, всех сочетаний строки и столбца.
- Построение таблиц, в том числе таблицы умножения.
- Рисование прямоугольных узоров и фигур по строкам и столбцам.
- Обработка двумерных таблиц данных.
Разобранный пример
Выведем на экран прямоугольник из звёздочек: три строки по пять символов в каждой. Наружный цикл будет считать строки, а внутренний — символы внутри одной строки:
нц для i от 1 до 3нц для j от 1 до 5вывод '*'кцпереход на новую строкукц
Внутренний цикл рисует одну строку из пяти звёздочек, а наружный повторяет это действие для каждой из трёх строк. Команда перехода на новую строку стоит в теле наружного цикла, но за пределами внутреннего, поэтому выполняется один раз после завершения каждой строки. В итоге на экране появляется аккуратный прямоугольник нужного размера. Если поменять границы циклов, так же легко получить прямоугольник любой ширины и высоты.
Как меняются счётчики
Полезно проследить за значениями счётчиков на каждом шаге. Пока наружный счётчик i равен единице, внутренний счётчик j успевает пробежать все значения от одного до пяти. Затем i становится равным двум, и j снова пробегает весь свой диапазон с самого начала. То же повторяется при i, равном трём. Так внутренний цикл как бы «обнуляется» и запускается заново при каждом отдельном шаге наружного цикла, а всего звёздочка выводится пятнадцать раз.
Частая ошибка: использовать одну и ту же переменную-счётчик для наружного и внутреннего циклов. Счётчики обязательно должны быть разными, иначе циклы будут менять одну переменную и мешать друг другу, и программа отработает неверно.
Кратко о главном
- Вложенный цикл находится внутри тела другого цикла.
- Внутренний цикл выполняется полностью на каждом шаге наружного.
- Общее число шагов равно произведению числа повторений.
- Счётчики наружного и внутреннего циклов должны различаться.
- Вложенные циклы удобны для таблиц, узоров и перебора пар.