Операторы break, else, continue

24.08.2022 0 Автор : Марина Николаевна
Операторы break, else, continue

Операторы break, else, continue. В программировании не последнюю роль играет оператор break — оператор прерывания цикла for или while.

Оператор прерывания цикла break

Предлагаем изучить программу, определяющую, что число является простым:

программирование

Как только встречаем делитель отличный от 1 и num, значение сигнальной метки меняется и цикл прерывается, всязи с тем, что дальнейшее его выполнение лишено смысла: число не является простым.

Использование оператора прерывания цикла break позволяет программы ускорять, так как лишние операции не используются.

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

В этом случае выполнение цикла прерывается командой break:

result = 0
for i in range(10):
    num = int(input())
    if num < 0:
        break
    result += num
print(result)

Оператор прерывания цикла break удобен в связке с сигнальными метками: когда после проверки некоторого условия нам нет смысла продолжать выполнение цикла.

Рассмотрим программу, которая определяет, содержит ли введенное пользователем число, цифру 4.

num = int(input())
number = num
flag = False
while num != 0:
    last_digit = num % 10
    if last_digit == 4:
        flag = True
        break # прерываем цикл, т.к. в числе есть 4 
    num //= 10

if flag == True:
    print('Число', number, 'содержит цифру 4')
else:
    print('Число', number, 'не содержит цифру 4')

Как только встретилась цифра 4, программа меняет значение сигнальной метки и прерывает цикл с помощью оператора break.

Цикл может и не прерываться пока не будет выполнено условие  num != 0 (все цифры числа обработаны). Однако в таком случае будет выполнена лишняя работа, а если число очень большое, то программа будет работать медленнее.

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

Оператор continue

Оператор continue позволяет пропускать  отдельные элементы при переборе цифр в цикле. Оператор continue позволяет перейти к следующей итерации цикла for или while до завершения всех команд в теле цикла.

Посмотрим на программу, которая выводит все числа от 1 до 100, кроме чисел 4, 7, 9 и 88.

for i in range(1, 101):
    if i == 4 or i == 7 or i == 9 or i == 88:
        continue  # переходим на следующую итерацию
    print(i)

Графическая схема операторов break и continue выглядит так:

программирование

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