Пример 1. Возрастная категория
📄 examples/age_category.py
age = int(input("Введите ваш возраст: "))
if age <= 2:
category = "Младенец"
elif age <= 12:
category = "Ребёнок"
elif age <= 17:
category = "Подросток"
else:
category = "Взрослый"
print(f"Категория: {category}.")
💡 Пояснение: цепочка
if-elif-else проверяет возраст от меньшего к большему. Благодаря порядку условий достаточно проверить верхнюю границу каждой категории.
Пример 2. Сортировка трёх чисел
📄 examples/sort_three.py
a = int(input("Первое число: "))
b = int(input("Второе число: "))
c = int(input("Третье число: "))
# Простой способ через встроенную сортировку
sorted_numbers = sorted([a, b, c])
print(", ".join(str(n) for n in sorted_numbers))
💡 Пояснение: функция
sorted() возвращает отсортированный список. Для учебных целей полезно также попробовать решить эту задачу вручную через сравнения.
Пример 3. Високосный год
📄 examples/leap_year.py
year = int(input("Введите год: "))
is_leap = (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)
if is_leap:
print(f"{year} год является високосным.")
else:
print(f"{year} год не является високосным.")
💡 Пояснение: год високосный, если делится на 4, но не на 100, либо делится на 400. Логическое выражение записано в одну переменную для лучшей читаемости.
Пример 4. Математическое округление
📄 examples/math_rounding.py
import math
x = float(input("Введите вещественное число: "))
# Отбрасываем дробную часть
frac = x - int(x)
if x >= 0:
result = math.ceil(x) if frac >= 0.5 else math.floor(x)
else:
result = math.floor(x) if frac <= -0.5 else math.ceil(x)
print(f"Округленное значение: {result}")
💡 Пояснение: в отличие от
round(), математическое округление всегда идёт от нуля при дробной части 0.5. Для отрицательных чисел используем math.floor, для положительных — math.ceil.
Пример 5. Гипотенуза треугольника
📄 examples/hypotenuse.py
import math
a = float(input("Введите длину первого катета: "))
b = float(input("Введите длину второго катета: "))
hypotenuse = math.sqrt(a ** 2 + b ** 2)
print(f"Длина гипотенузы: {hypotenuse}")
💡 Пояснение: теорема Пифагора:
c² = a² + b². Модуль math даёт функцию sqrt() для извлечения корня.
Пример 6. Скидки по количеству
📄 examples/quantity_discount.py
price = float(input("Введите цену товара: "))
quantity = int(input("Введите количество: "))
if quantity >= 100:
discount = 0.20
elif quantity >= 50:
discount = 0.15
elif quantity >= 20:
discount = 0.10
elif quantity >= 10:
discount = 0.05
else:
discount = 0.0
total = price * quantity * (1 - discount)
print(f"Итоговая сумма: {total:.2f}")
💡 Пояснение: условия проверяются от большего количества к меньшему. Первое подходящее условие определяет скидку. Формат
:.2f выводит два знака после запятой.
Пример 7. match-case для HTTP-статусов
📄 examples/http_status.py
status = int(input("Введите HTTP-статус: "))
match status:
case 200:
message = "OK"
case 400:
message = "Bad Request"
case 401 | 403 | 404:
message = "Client Error"
case 500 | 502 | 503:
message = "Server Error"
case _:
message = "Unknown"
print(message)
Проверить по документации:
match-case доступен с Python 3.10. Убедитесь, что ваша версия Python поддерживает эту конструкцию.