Считается число «успешных» статусов. Код: cnt = 0; цикл for st in ['ok', 'cancelled', 'ok']:; если st == 'cancelled', выполняется continue, иначе cnt += 1. Чему равно cnt после цикла?

A1: continue прерывает цикл сразу, поэтому второй элемент 'ok' не обработается счётчиком
B3: continue не влияет на счётчик, и каждый из трёх элементов увеличит cnt на единицу
C0: continue сбрасывает счётчик в начале каждой итерации, обнуляя cnt после прибавления
D2: continue пропускает только 'cancelled', а оба 'ok' увеличивают cnt до двойки
Правильный ответ. continue пропускает текущую итерацию и переходит к следующей.

Разбор

На втором элементе 'cancelled' сработает continue, поэтому cnt не увеличится. Для двух значений 'ok' счётчик увеличится на единицу каждый раз, итоговое значение cnt будет 2. В отличие от break, continue не выходит из цикла полностью, а лишь пропускает оставшийся код текущей итерации.

Можно заниматься бесплатно

Готовим вопросы…

Три вопроса по теме этой страницы, с объяснениями.

Продолжить в браузере

Ещё вопросы по теме «Циклы и условия»