Мини-урок · перед практикой
Часы - 2
За полный час часовая стрелка проходит 30°, минутная — 360°.
Как к ней подойти
Увидите, как целочисленные операции и вычисления с дробями помогают обойтись без лишних шагов.
Коротко о теме
Операции // и % помогают разделить число на целую часть и остаток. Для дробных вычислений следите за точностью и порядком действий: одно и то же число может требовать разного способа обработки.
Ключевая идея · Рекомендуемое решение
Остаток убирает полные часы; внутри часа минутная стрелка движется в 12 раз быстрее.
Проверьте перед запуском
- На границе часа ответ 0°, а не 360°.
- Округлять количество часов до ближайшего целого нельзя.
После практики
Сравните свой подход
Ниже - готовое решение, другой способ, если он есть, и важные детали проверки.
Ваше принятое решение
Рекомендуемое решение
Остаток убирает полные часы; внутри часа минутная стрелка движется в 12 раз быстрее.
angle = float(input())
print((angle % 30) * 12)
Время: O(1). Память: O(1).
Ещё один способ
Дробная часть прошедшего времени в часах задаёт долю оборота минутной стрелки.
angle = float(input())
hours = angle / 30
fraction = hours - int(hours)
print(fraction * 360)
Время: O(1). Память: O(1).