Найти тему

Программирование, как написать свой первый код на Python Часть 5 Цикл while, else, elif

Оглавление
канадский нейросеть
канадский нейросеть

С if мы разобрались в предыдущей статье

Программирование, как написать свой первый код на Python Часть 4 Цикл while и if
Прога, не книга и неведома зверушка20 ноября 2023

Но напомню

Условный оператор

Проверки на сравнении данных позволяют использовать условия if-else внутри программ с разными вариантами действий. Выглядит это следующим образом:

if (если условие истинно, выполняется действие – 1)

else (иначе, если проверка не прошла выполнится действие – 2)

Тело условной конструкции может содержать одно или несколько выражений (строк). По завершении тела может идти следующее условие, которое начинается с оператора elif (сокращение от else if — «иначе если»). Оно проверяется только в случае, если предыдущее условие не было истинным. Синтаксис в elif аналогичен if. Операторов elif для одного блока условного оператора может быть несколько, а может не быть совсем. Последним идёт оператор else, который не содержит условия, а выполняется, только если ни одно из предыдущих условий в if и elif не выполнилось. Оператор else не является обязательным.

На пример, давайте определим куда относится число, к отрицательным или положительным?

x = int(input())
if x < 0:
print('Minus')
else:
print('Plus')

Вложенные инструкции

Внутри условных инструкций можно использовать любые инструкции языка Питон, в том числе и условную инструкцию. Получаем вложенное ветвление – после одной развилки в ходе исполнения программы появляется другая развилка. При этом вложенные блоки имеют больший размер отступа (например, 8 пробелов). На пример, проверка больше или меньше нуля:

x = int(input())
y = int(input())
if x > 0:
if y > 0:
print("Больше, больше ")
else:
print("больше, меньше")
else:
if y > 0:
print("Меньше, больше")
else:
print("Меньше, меньше")

Так же можно сделать

Каскадом

Т.Е. используя “каскадную“ последовательность операцией if... elif... else

Например(преведущая задача решенная 'каскадным' способом):

x = int(input())
y = int(input())
if x > 0 and y > 0:
print("Больше, больше")
elif x > 0 and y < 0:
print("Больше, меньше")
elif y > 0:
print("Меньше, больше")
else:
print("Меньше, меньше")

Подробнее цикл while

После тела цикла можно написать слово else: после него блок операций, который будет выполнен один раз после окончания цикла, когда проверяемое условие станет неверно:

x = 1
while x <= 10:
print(x)
x += 1 #Прибавляем единицу чтобы изменить число,
# иначе у нас все время будет 1
else: #Иначе, т.е. если икс больше 10
print('Цикл окончен, x = ', x)

Вообще эту же инструкцию можно просто написать после окончания цикла. Смысла писать ее через елсе нет. А вот если мы добавим завершение цикла... Если во время выполнения Питон встречает инструкцию break внутри цикла, то он сразу же прекращает выполнение этого цикла и выходит из него. При этом ветка else исполняться не будет. Инструкцию break будет осмысленно вызывать внутри инструкции if, то есть она должна выполняться только при выполнении какого-то особенного условия. Можно проверить:

a = int(input())
while a != 0:
if a < 0:
print('Встретилось отрицательное число', a)
break
a = int(input())
else:
print('Ни одного отрицательного числа не встретилось')

Ответы на задачи

№1

x = int(input())
y = int(input())
if x > y:
print(y)
if x < y:
print(x)

Это не одно решение. У вас может совершенно другое решение. Если оно правильно работает, значит вы молодцы :)

№2

year = int(input())
if (year % 4 == 0) and (year % 100 != 0) or (year % 400 == 0):
print('YES')
else:
print('NO')

И конечно секретик по сочетанию клавиш:

F5 — обновляет страницу.

Ctrl+End — переместиться в конец.

Если вам понравилась статья поставьте лайк, мне приятно, а вам один клик :)

Если у вас остались вопросы по этой теме (или есть вопросы по информатике / Python ) пишите в комментариях

Чтобы не пропустить новые части подпишитесь

Всем удачи :з