P
pro·school.ru
Каталог школ

Вложенные циклы

💻 Информатика · 8 класс

Что такое вложенные циклы

Вложенный цикл — это цикл, который целиком находится внутри тела другого цикла. Внешний цикл называют наружным, а тот, что записан внутри его тела, — внутренним. Работают они согласованно: при каждом отдельном повторении наружного цикла внутренний цикл выполняется полностью, от первого своего шага до последнего, и только потом наружный цикл переходит к следующему повторению.

Как считать число повторений

Понимать, сколько раз выполнятся команды, очень важно. Если наружный цикл выполняется m раз, а внутренний — n раз, то команды, записанные внутри внутреннего цикла, выполнятся m * n раз. Это произведение помогает заранее оценить, сколько действий сделает программа.

НаружныйВнутреннийВсего шагов
3412
5525
10220

Где применяют вложенные циклы

Вложенные циклы нужны всякий раз, когда приходится перебирать сразу две величины, изменяющиеся независимо.

  • Перебор всех пар значений — например, всех сочетаний строки и столбца.
  • Построение таблиц, в том числе таблицы умножения.
  • Рисование прямоугольных узоров и фигур по строкам и столбцам.
  • Обработка двумерных таблиц данных.

Разобранный пример

Выведем на экран прямоугольник из звёздочек: три строки по пять символов в каждой. Наружный цикл будет считать строки, а внутренний — символы внутри одной строки:

нц для i от 1 до 3
нц для j от 1 до 5
вывод '*'
кц
переход на новую строку
кц

Внутренний цикл рисует одну строку из пяти звёздочек, а наружный повторяет это действие для каждой из трёх строк. Команда перехода на новую строку стоит в теле наружного цикла, но за пределами внутреннего, поэтому выполняется один раз после завершения каждой строки. В итоге на экране появляется аккуратный прямоугольник нужного размера. Если поменять границы циклов, так же легко получить прямоугольник любой ширины и высоты.

Как меняются счётчики

Полезно проследить за значениями счётчиков на каждом шаге. Пока наружный счётчик i равен единице, внутренний счётчик j успевает пробежать все значения от одного до пяти. Затем i становится равным двум, и j снова пробегает весь свой диапазон с самого начала. То же повторяется при i, равном трём. Так внутренний цикл как бы «обнуляется» и запускается заново при каждом отдельном шаге наружного цикла, а всего звёздочка выводится пятнадцать раз.

Частая ошибка: использовать одну и ту же переменную-счётчик для наружного и внутреннего циклов. Счётчики обязательно должны быть разными, иначе циклы будут менять одну переменную и мешать друг другу, и программа отработает неверно.

Кратко о главном

  • Вложенный цикл находится внутри тела другого цикла.
  • Внутренний цикл выполняется полностью на каждом шаге наружного.
  • Общее число шагов равно произведению числа повторений.
  • Счётчики наружного и внутреннего циклов должны различаться.
  • Вложенные циклы удобны для таблиц, узоров и перебора пар.