Цикл
Это понятие впервые встречается на программе «Электроника, программирование и инженерная практика» — примерно 13-14 лет (7-8 класс).
Команда «повторяй»: программа выполняет одни и те же шаги много раз, а ты записываешь их только один раз.
Круги на стадионе: бежишь по одной дорожке, пока не сделаешь 10 кругов или пока тренер не скажет «стоп».
Нарисовать в Scratch квадрат циклом «повторить 4» вместо восьми одинаковых блоков.
Конструкция повторения: тело цикла выполняется заданное число раз («повторить N», for) или пока условие истинно (while). После каждого прохода исполнитель возвращается к проверке. Если условие никогда не станет ложным, цикл бесконечен: для игры это норма, для расчёта — ошибка.
Переписать скетч Arduino, где мигание светодиода скопировано десять раз, через цикл; предсказать число вспышек при «повторить 5».
Конструкции итерации: for со счётчиком, while с предусловием, do-while с постусловием, for-each по коллекции; break прерывает цикл, continue пропускает проход. Вложенность определяет сложность: два вложенных цикла по n элементам — порядка n² операций. Краевой случай: главный цикл прошивки Arduino (loop()) бесконечен намеренно.
Найти в чужом коде ошибку на единицу (off-by-one): цикл обрабатывает 9 элементов из 10; исправить и показать, где пригодится break.
Частое заблуждение
«Бесконечный цикл — всегда ошибка». Нет: главный цикл игры или прошивки Arduino бесконечен намеренно; ошибка — бесконечность незапланированная.