Урок 4.1 · Программирование с нуля · Модуль 4. Повторение действий · Бесплатно
Цель урока: Понять, как работает while: условие, тело цикла, счётчик и остановка. Научиться замечать бесконечный цикл.
Нужно знать заранее: Переменные и условия
Зачем это нужно: Представьте, что нужно напечатать числа от 1 до 100 или спрашивать пароль, пока человек не введёт верный. Копировать одну и ту же команду много раз — плохая идея: код становится длинным, а исправлять приходится каждую строку. Цикл позволяет написать действие один раз и повторять его, пока выполняется условие. Это одна из главных конструкций программирования: без циклов не обходятся списки, игры, проверки и почти любая программа.
Как это работает: while — это команда «пока». Она повторяет тело цикла, пока условие остаётся истинным. Синтаксис: i = 1 while i <= 3: print(i) i += 1 Сначала программа проверяет условие. Если оно истинно, выполняется тело цикла — строки с отступом. Потом условие проверяется снова. Когда оно становится ложным, цикл заканчивается, и программа идёт дальше. i — это счётчик: переменная, которая показывает, на каком шаге мы находимся. += — короткая запись «прибавить и присвоить»: i += 1 значит i = i + 1. Внутри тела обязательно нужно менять переменную, от которой зависит условие. Если этого не делать, условие всегда будет истинным — получится бесконечный цикл. Платформа остановит такую программу, но лучше замечать ошибку сразу. Тело цикла пишется с отступом — так же, как тело условия if. Отступ показывает, какие строки повторяются.
Разбор: Возьмём код: i = 1 while i <= 3: print(i) i += 1 Шаг 1: i = 1, условие 1 <= 3 истинно, печатается 1, i становится 2. Шаг 2: i = 2, условие 2 <= 3 истинно, печатается 2, i становится 3. Шаг 3: i = 3, условие 3 <= 3 истинно, печатается 3, i становится 4. Шаг 4: i = 4, условие 4 <= 3 ложно, цикл заканчивается. На экране: 1, 2, 3 — каждое число с новой строки. Если написать while i < 3, то напечатаются только 1 и 2: число 3 не пройдёт проверку. Если забыть i += 1, i останется единицей, и цикл будет печатать 1 бесконечно.
Частая ошибка: Забыть изменить переменную внутри цикла. Тогда условие никогда не станет ложным, и программа зациклится. Вторая частая ошибка — неправильный отступ: если print(i) стоит без отступа, он выполнится один раз после цикла, а не на каждом шаге. Третья — перепутать < и <=: while i < 3 напечатает 1 и 2, а while i <= 3 — 1, 2 и 3. И ещё: в условии нужно сравнение (==, <, <=), а не присваивание (=).
Итог: while повторяет команды, пока условие истинно. Условие проверяется перед каждым повтором, тело пишется с отступом, а переменная внутри тела должна меняться. Если её не менять, получится бесконечный цикл.
Что дальше: В следующем уроке появится for и range — они удобнее, когда заранее известно, сколько раз нужно повторить действие.
i = 1
while i <= 3:
print(i)
i += 1
print("Поехали!")Выведите числа 1, 2 и 3, каждое с новой строки, используя while. В конце выведите строку «Поехали!».
Критерий успеха: Выведены 1, 2, 3 и «Поехали!».