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

⚡ Задания в двух словах

  • Задание 1 — скидки для оптовых покупателей в зависимости от количества.
  • Задание 2 — площадь и длина окружности по радиусу.

Обе задачи используют input(), преобразование в числа и модуль math.

🏋️ Раздел тренировки

В этом разделе вы пошагово выполните практические задания: от создания папки до рабочих программ в VS Code.

Цель тренировки: научиться применять встроенные функции, импортировать math, округлять результаты и работать с вводом пользователя.

📂 Подготовка проекта

  1. Создайте папку урока внутри вашего учебного репозитория, например python-fundamentals-practice/lesson-10/.
  2. Откройте её в VS Code.
  3. Создайте виртуальное окружение (опционально): python -m venv venv.
  4. Для каждого задания создавайте отдельный файл: task_01_discount.py, task_02_circle.py.

Задание 1. Скидки для оптовых покупателей

Условие: напишите программу, которая запрашивает цену товара и количество, затем рассчитывает итоговую стоимость с учётом оптовых скидок.

  • 10–19 штук — скидка 5%
  • 20–49 штук — скидка 10%
  • 50–99 штук — скидка 15%
  • 100 и более — скидка 20%

Итоговую сумму округлите до сотых.

Что должно получиться:

Введите цену: 100
Введите количество: 25
Итоговая сумма: 2250.00

Подсказка: используйте цепочку if-elif-else для выбора скидки и round(total, 2) для округления.

Задание 2. Площадь и длина круга

Условие: напишите программу, которая запрашивает радиус круга и выводит его площадь и длину окружности, округлённые до сотых.

Формулы:

  • area = math.pi * radius ** 2
  • circumference = 2 * math.pi * radius

Что должно получиться:

Введите радиус: 5
Площадь: 78.54
Длина окружности: 31.42

Подсказка: не забудьте импортировать math и преобразовать ввод в float.

Проверка понимания

Выберите один вариант ответа. После клика правильный ответ подсветится зелёным.

Вопрос 1

Зачем нужны embeddings в RAG?

Вопрос 2

Почему RAG-ответу нужны ссылки на источники?

Вопрос 3

Какой стиль имён переменных обычно рекомендует PEP 8?

Вопрос 4

Зачем использовать f-strings в современном Python?

Вопрос 5

Когда полезен ранний возврат из функции?

Вопрос 6

Что делает аннотация типа в Python?

Вопрос 7

Как лучше обрабатывать ожидаемую ошибку преобразования?