Условный оператор в Python - Урок информатики для 8 класса
💻 Информатика 8 класс

Разветвляющиеся алгоритмы в Python

Представь: ты заходишь в инсту, и алгоритм решает — показать тебе рилс с котиками или с футболом. Как он это делает? Правильно, проверяет условие! Сейчас мы разберём, как научить компьютер принимать решения и выбирать, что делать дальше.

Каждая программа делает выбор — куда идти дальше

1. Полная форма условного оператора

В Python, когда нужно выбрать один из двух вариантов действий, мы используем конструкцию if-else (читается как «если-иначе»).

Условие проверено — программа выбирает путь

Условие проверено — программа выбирает путь

Как это выглядит:

if <условие>:
    # группа команд 1
    # выполнится, если условие истинно
else:
    # группа команд 2
    # выполнится, если условие ложно

⚠️ Обрати внимание:

  • После if и else ставится двоеточие :
  • Все команды внутри блока обязательно пишутся с отступом (обычно 4 пробела или Tab)
  • В Python отступы — это не просто красота, это синтаксис! Без них код не работает

Пример 1: Чётное или нечётное?

Напишем программу, которая определяет, чётное ли число ввёл пользователь.

x = int(input('Введи число: '))

if x % 2 == 0:
    print(f'{x} - чётное число')
else:
    print(f'{x} - нечётное число')

💡 Как это работает:

  • x % 2 — остаток от деления на 2
  • Если остаток равен 0 — число чётное
  • Иначе — нечётное

Попробуй сам: введи 8, потом 15. Видишь разницу?

Пример 2: Попадает ли точка в отрезок?

Часто в играх нужно проверить, находится ли персонаж в определённой зоне. Давай напишем программу, которая проверяет, лежит ли число X в диапазоне от A до B.

print('Проверка принадлежности точки отрезку')
a = float(input('Введи начало отрезка (a): '))
b = float(input('Введи конец отрезка (b): '))
x = float(input('Введи точку (x): '))

if x >= a and x <= b:
    print(f'Точка {x} принадлежит отрезку [{a}, {b}]')
else:
    print(f'Точка {x} НЕ принадлежит отрезку [{a}, {b}]')

🔥 Фишка здесь:

  • and — логическая операция «И» (оба условия должны быть истинны)
  • x >= a and x <= b можно записать короче: a <= x <= b — да, в Python так можно!

2. Неполная форма условного оператора

Иногда нам нужно что-то сделать только при выполнении условия, а если условие ложно — просто ничего не делать. Для этого используем if без else.

Если условие не выполнено — просто идём дальше

Если условие не выполнено — просто идём дальше

Как это выглядит:

if <условие>:
    # группа команд
    # выполнится только если условие истинно
# если условие ложно, программа просто идёт дальше

Пример 3: Найти наибольшее из трёх чисел

Давай найдём максимальное число среди трёх введённых значений.

print('Нахождение наибольшего из трёх величин')
a = int(input('Введи a: '))
b = int(input('Введи b: '))
c = int(input('Введи c: '))

y = a  # предполагаем, что a — максимальное

if b > y:
    y = b

if c > y:
    y = c

print(f'Максимальное число: {y}')

💡 Как работает:

  1. Сначала считаем, что y = a
  2. Если b больше — перезаписываем y = b
  3. Если c больше — перезаписываем y = c
  4. В итоге в y точно окажется максимум

🎯 Задание для тебя:

Допиши эту программу так, чтобы она находила максимальное из четырёх чисел (добавь переменную d).

Пример 4: Решение квадратного уравнения

Помнишь квадратное уравнение из алгебры? ax² + bx + c = 0

Давай напишем программу, которая его решает!

print('Решение квадратного уравнения ax² + bx + c = 0')
a = float(input('Введи коэффициент a: '))
b = float(input('Введи коэффициент b: '))
c = float(input('Введи коэффициент c: '))

# Вычисляем дискриминант
d = b**2 - 4*a*c

if d < 0:
    print('Корней нет (дискриминант отрицательный)')

if d == 0:
    x = -b / (2*a)
    print(f'Один корень: x = {x:.3f}')

if d > 0:
    x1 = (-b + d**0.5) / (2*a)
    x2 = (-b - d**0.5) / (2*a)
    print('Два корня:')
    print(f'x1 = {x1:.3f}')
    print(f'x2 = {x2:.3f}')

📌 Обрати внимание:

  • ** — возведение в степень (d**0.5 — корень из d)
  • :.3f — форматирование числа (3 знака после запятой)

3. Вложенные условия — выбор внутри выбора

Иногда после одной проверки нужна ещё одна. Например: «Если есть интернет, то если есть деньги на счету — включи видео, иначе — покажи рекламу».

Выбор за выбором — вложенные условия

Выбор за выбором — вложенные условия

В Python можно использовать конструкцию if-elif-else (читается «если-иначе если-иначе»).

Как это выглядит:

if <условие_1>:
    # выполнится, если условие_1 истинно
elif <условие_2>:
    # выполнится, если условие_1 ложно, но условие_2 истинно
else:
    # выполнится, если оба условия ложны

Пример 5: Квадратное уравнение — версия 2.0

Перепишем программу решения квадратного уравнения с использованием elif:

print('Введи коэффициенты квадратного уравнения a, b, c')
a = float(input('a = '))
b = float(input('b = '))
c = float(input('c = '))

d = b**2 - 4*a*c

if d < 0:
    print('Нет корней')
elif d == 0:
    x = -b / (2*a)
    print(f'x = {x:.3f}')
else:
    x1 = (-b - d**0.5) / (2*a)
    x2 = (-b + d**0.5) / (2*a)
    print(f'x1 = {x1:.3f}')
    print(f'x2 = {x2:.3f}')

✨ Почему так лучше?

  • Код читается как история: «Если вот это — делаем раз, иначе если вот это — делаем два, а если ничего не подошло — делаем три»
  • Меньше повторений, меньше путаницы

🎯 Твоё задание:

Используй вложенные ветвления и напиши программу для проверки принадлежности точки X отрезку [a, b].

4. Множественное ветвление — таблицы решений

Когда вариантов развития событий много, можно построить таблицу решений. Давай разберём на примере.

От баллов к оценке — много вариантов, одно решение

От баллов к оценке — много вариантов, одно решение

Пример 6: Перевод баллов в оценку

Таблица решений:

Баллы Оценка
0 ≤ баллы < 20 1
20 ≤ баллы < 40 2
40 ≤ баллы < 60 3
60 ≤ баллы < 80 4
80 ≤ баллы ≤ 100 5
ball = int(input('Введи баллы (0-100): '))

if ball < 20:
    mark = 1
elif ball < 40:
    mark = 2
elif ball < 60:
    mark = 3
elif ball < 80:
    mark = 4
else:
    mark = 5

print(f'Оценка: {mark}')

💡 Почему работает именно так:

  • Если ball < 20 — сразу ставим 1
  • Если дошли до elif ball < 40, значит ball уже ≥ 20, проверяем только < 40
  • И так далее — каждый elif отсекает предыдущие варианты

📌 Самое главное

Условный оператор позволяет программе выбирать, что делать дальше
Полная форма (if-else) — когда нужно сделать одно ИЛИ другое
Неполная форма (if без else) — когда действие нужно только при истинном условии
Вложенные условия (if-elif-else) — для множественного выбора
Отступы в Python обязательны — без них код не работает!
Логические операции: and (И), or (ИЛИ), not (НЕ)
Операции сравнения: == (равно), != (не равно), >, <, >=, <=

🤔 Проверь себя

Проверь, как хорошо ты усвоил материал!

1. Найди ошибку: что не так в этом коде?
if x < y then x = 0 else print(y)

Подсказка: В Python нет слова then, нужны двоеточия и отступы!

2. Загадка: условный оператор или нет?

Определи, в каких случаях нужен else, а в каких достаточно просто if:

  • a) Проверить, совершеннолетний ли пользователь, и если нет — закрыть доступ
  • b) Выбрать, какое видео показать: с котиками или с собаками
  • c) Добавить бонусные баллы, если игрок прошёл уровень быстрее 60 секунд
3. Переведи на Python

Напиши программу: если число делится и на 2, и на 3 — выведи «Делится на 6», иначе — «Не делится на 6».

Подсказка: используй оператор and и остаток от деления %

4. Придумай свой пример

Где в твоей жизни встречаются разветвляющиеся алгоритмы?

Подсказка: выбор игры, какую музыку включить, что поесть, какой фильм посмотреть...

5. Исправь и улучши

Программа должна определять, положительное ли число. Что здесь можно улучшить?

x = int(input('Число: '))
if x > 0:
    print('Положительное')
if x < 0:
    print('Отрицательное')
if x == 0:
    print('Ноль')

Подсказка: можно использовать elif вместо нескольких if

6. Челлендж: високосный год

Напиши программу, которая определяет, високосный ли год.

Правило:

  • Год високосный, если он делится на 4
  • НО если делится на 100 — то не високосный
  • НО если делится на 400 — то всё-таки високосный

Подсказка: тебе понадобятся вложенные условия!

7. А теперь представь...

...что объясняешь другу, как работает if-elif-else. Сможешь?

Это лучший способ проверить, что ты действительно понял тему!

🎯 Практические задания

Попробуй применить полученные знания на практике!

📊 Задание 1: Калькулятор оценок

Напиши программу, которая переводит процент правильных ответов в оценку:

  • 90-100% → 5
  • 75-89% → 4
  • 60-74% → 3
  • Меньше 60% → 2

🌡️ Задание 2: Термометр

Создай программу-советчик по одежде в зависимости от температуры:

  • Ниже 0°C → «Надень пуховик!»
  • 0-15°C → «Надень куртку»
  • 15-25°C → «Лёгкая кофта»
  • Выше 25°C → «Футболка!»

🎮 Задание 3: Игровой бот

Напиши программу для игры «Камень, ножницы, бумага»:

  • Пользователь вводит свой выбор
  • Компьютер делает случайный выбор
  • Программа определяет победителя

Подсказка: используй import random

💰 Задание 4: Магазинная скидка

Создай программу расчёта скидки:

  • Покупка от 1000₽ → скидка 5%
  • Покупка от 5000₽ → скидка 10%
  • Покупка от 10000₽ → скидка 15%

Программа должна выводить итоговую сумму со скидкой

Теперь ты умеешь программировать разветвляющиеся алгоритмы!

Теперь ты умеешь программировать разветвляющиеся алгоритмы!

🚀 Отличная работа! Теперь ты знаешь, как создавать программы, которые принимают решения. В следующих уроках мы изучим циклы и научим программы повторять действия!

Информатика — твой билет в цифровое будущее