Слайд 1
📘 Тема урока: Условный оператор
Подтемы: Вложенные условия, Каскадные условия
Аннотация
Изучим вложенный и каскадный условный оператор, разберём их различия и посмотрим, как можно сделать код более читаемым.
🔹 Вложенный оператор
Внутри условного оператора if можно использовать другие условные операторы.
Такое построение называется вложенным ветвлением.
if условие1:
блок кода
else:
if условие2:
блок кода
else:
if условие3:
блок кода
...
Каждый уровень вложенности требует дополнительного отступа в 4 пробела.
📍 Пример 1. Определение координатной четверти
x = int(input())
y = int(input())
if x > 0:
if y > 0:
print('Первая четверть')
else:
print('Четвертая четверть')
else:
if y > 0:
print('Вторая четверть')
else:
print('Третья четверть')
Этот код эквивалентен решению с использованием логических операторов and, но использует структуру вложенных if.
📍 Пример 2. Перевод оценки из 100-балльной в 5-балльную систему
grade = int(input('Введите вашу отметку по 100-балльной системе: '))
if grade >= 90:
print(5)
else:
if grade >= 80:
print(4)
else:
if grade >= 70:
print(3)
else:
if grade >= 60:
print(2)
else:
print(1)
💡 Глубокое вложение делает код трудным для восприятия.
Лучше использовать
if-elif-else — каскадную структуру.
🔹 Каскадный условный оператор
Когда необходимо проверить несколько условий подряд,
удобнее использовать каскадную конструкцию if-elif-else.
if условие1:
блок кода
elif условие2:
блок кода
...
else:
блок кода
📍 Пример. Перевод оценки с помощью каскадного оператора
grade = int(input('Введите вашу отметку: '))
if grade >= 90:
print(5)
elif grade >= 80:
print(4)
elif grade >= 70:
print(3)
elif grade >= 60:
print(2)
else:
print(1)
💡
if, elif и else находятся на одном уровне выравнивания.
Это делает код короче, чище и понятнее, чем при вложенных if.
📍 Пример без блока else
Заключительный блок else не является обязательным:
traffic_light_signal = input('Введите сигнал светофора: ')
if traffic_light_signal == 'красный':
print('Стой!')
elif traffic_light_signal == 'желтый':
print('Приготовься...')
elif traffic_light_signal == 'зеленый':
print('Иди!')
💡 Если введён некорректный сигнал, программа ничего не выведет —
просто завершится без ошибок.