Перейти к содержанию

10. Циклы

Что такое цикл

Цикл — это конструкция, которая позволяет выполнять один и тот же блок кода несколько раз. Циклы используются тогда, когда необходимо повторение действий. Примеры задач: - вывести числа от 1 до 10; - выполнить вычисления несколько раз; - повторять действия до выполнения условия.


Цикл while

Цикл while выполняется, пока условие истинно. Общий вид:

while условие:
    действия

Пример:

i = 1

while i <= 5:
    print(i)
    i = i + 1

Разбор: - i — счётчик; - условие i <= 5 проверяется перед каждой итерацией; - после выполнения блока значение увеличивается.


Бесконечный цикл

Если условие всегда истинно, цикл будет бесконечным.

while True:
    print("Бесконечность")

Чтобы выйти из такого цикла, используется команда break.


Цикл for

Цикл for используется для перебора последовательности. Общий вид:

for переменная in последовательность:
    действия

Функция range()

Для работы с числами используется функция range().

for i in range(5):
    print(i)

Результат: 0
1
2
3
4 range(5) создаёт числа от 0 до 4.


Форматы range()

range(конец)
range(начало, конец)
range(начало, конец, шаг)

Примеры:

range(1, 6)
range(0, 10, 2)

Оператор break

Прерывает выполнение цикла.

for i in range(10):
    if i == 5:
        break
    print(i)

Оператор continue

Пропускает текущую итерацию.

for i in range(5):
    if i == 2:
        continue
    print(i)

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

Циклы могут быть вложенными.

for i in range(3):
    for j in range(2):
        print(i, j)

Каждый уровень требует дополнительного отступа.


Цикл с предусловием и постусловием

В программировании различают два типа циклов: - цикл с предусловием; - цикл с постусловием.

Цикл с предусловием

Цикл с предусловием проверяет условие перед выполнением блока кода. Если условие ложно изначально — цикл не выполнится ни разу. В Python таким циклом является while. Пример:

i = 1

while i <= 5:
    print(i)
    i += 1

Здесь сначала проверяется условие i <= 5, и только затем выполняется тело цикла. Если бы i было равно 10, цикл не выполнился бы ни разу.

Цикл с постусловием

Цикл с постусловием сначала выполняет блок кода, а затем проверяет условие. Такой цикл гарантированно выполняется минимум один раз. В некоторых языках программирования используется конструкция do ... while. В Python отдельного цикла с постусловием нет, но его можно реализовать с помощью while True и оператора break. Пример имитации цикла с постусловием:

while True:
    number = int(input("Введите число (0 для выхода): "))

    if number == 0:
        break

    print("Вы ввели:", number)

Здесь: - тело цикла выполняется хотя бы один раз; - выход из цикла происходит по условию внутри блока.

Сравнение

Тип цикла Когда проверяется условие Может не выполниться ни разу
Предусловие До выполнения Да
Постусловие После выполнения Нет

Практическая работа

Задание 1

Вывести числа от 1 до 10 с помощью while.


Задание 2

Вывести числа от 1 до 10 с помощью for.


Задание 3

Найти сумму чисел от 1 до 10.


Задание 4

Вывести только чётные числа от 1 до 20.


Задание 5

Запрашивать числа у пользователя, пока не будет введено число 0.


Задание 6

Вывести таблицу умножения на 5.