💻 Практические примеры

⚡ Минимальный рабочий пример

import math

radius = float(input("Введите радиус: "))
area = math.pi * radius ** 2
circumference = 2 * math.pi * radius

print("Площадь:", round(area, 2))
print("Длина окружности:", round(circumference, 2))

Этот код импортирует math, читает радиус и считает площадь круга и длину окружности.

Пример 1. Встроенные функции

📄 examples/builtin_demo.py
numbers = [12, -5, 8, 3, -1]

print("Модуль -5:", abs(-5))
print("Максимум:", max(numbers))
print("Минимум:", min(numbers))
print("Сумма:", sum(numbers))
print("2 в степени 10:", pow(2, 10))
print("Округление 3.14159 до 2 знаков:", round(3.14159, 2))

Пример 2. Разные способы импорта

📄 examples/import_styles.py
# Явный импорт — рекомендуется
import math
print(math.sqrt(16))

# Импорт конкретных имён — допустимо
from math import sqrt, pi
print(sqrt(16))
print(pi)

# Псевдоним — удобно для длинных имён
import math as m
print(m.sqrt(16))

# Звёздочка — работает, но лучше избегать
from math import *
print(sqrt(16))

Пример 3. Площадь и длина круга

📄 examples/circle.py
import math

radius = float(input("Введите радиус: "))
area = math.pi * radius ** 2
circumference = 2 * math.pi * radius

print(f"Площадь: {area:.2f}")
print(f"Длина окружности: {circumference:.2f}")

Пример 4. Банковское округление

📄 examples/bank_rounding.py
print(round(2.5))   # 2
print(round(3.5))   # 4
print(round(-1.5))  # -2
print(round(4.235, 2))  # 4.23 или 4.24 в зависимости от бита чётности

# Для школьного округления вверх используй math.floor / math.ceil
import math
print(math.floor(2.7))  # 2
print(math.ceil(2.1))   # 3

Пример 5. Проблема точности float

📄 examples/float_compare.py
total = 0.1 + 0.2
print(total)              # 0.30000000000000004
print(total == 0.3)       # False

import math
print(math.isclose(total, 0.3, rel_tol=1e-9))  # True
print(round(total, 2) == 0.3)                  # True

Пример 6. Точные расчёты с Decimal

📄 examples/decimal_demo.py
from decimal import Decimal

price = Decimal('19.99')
quantity = Decimal('3')
total = price * quantity
print(total)              # 59.97

# Правильное сравнение
print(Decimal('0.1') + Decimal('0.2') == Decimal('0.3'))  # True

# Неправильно: передача float
print(Decimal(0.1))       # 0.100000000000000005551115...

Пример 7. Тригонометрия

📄 examples/trig.py
import math

angle = float(input("Введите угол в градусах: "))
radians = math.radians(angle)

print(f"sin({angle}°) = {math.sin(radians):.4f}")
print(f"cos({angle}°) = {math.cos(radians):.4f}")
print(f"tan({angle}°) = {math.tan(radians):.4f}")

Как запустить в VS Code

  1. Создайте файл, например circle.py, в рабочей папке урока.
  2. Скопируйте код из примера.
  3. Откройте терминал в VS Code (Ctrl + `).
  4. Активируйте виртуальное окружение: venv\Scriptsctivate (Windows) или source venv/bin/activate (Mac/Linux).
  5. Запустите: python circle.py