Вопрос задан 11.03.2025 в 09:57. Предмет Информатика. Спрашивает Майер Светлана.

ПИТОН
В некоторой школе занятия начинаются в 9:00. Продолжительность урока — 45 минут, после 1-го, 3-го, 5-го и т.д. уроков перемена 5 минут, а после 2-го, 4-го, 6-го и т.д. — 15 минут.

Дан номер урока (число от 1 до 10). Определите, когда заканчивается указанный урок.

Выведите два целых числа: время окончания урока в часах и минутах.

Перейти к ответам

Ответы на вопрос

Отвечает Иноземцев Иван.

Чтобы решить задачу о времени окончания урока, давайте разберём её пошагово.

Условие задачи

  1. Уроки начинаются в 9:00.
  2. Продолжительность одного урока — 45 минут.
  3. После 1-го, 3-го, 5-го и т.д. уроков перемена длится 5 минут.
  4. После 2-го, 4-го, 6-го и т.д. уроков перемена длится 15 минут.
  5. Нужно определить время окончания N-го урока (где NN — число от 1 до 10).

План решения

  1. Начнём с 9:00 и будем добавлять время.
  2. Для каждого урока будем добавлять:
    • 45 минут за урок.
    • Перемены по правилам: если номер урока нечётный — добавляем 5 минут, если чётный — 15 минут.
  3. Важно: после последнего урока перемены нет. То есть на NN-м уроке добавляем только 45 минут и всё.

Алгоритм

  1. Инициализируем переменные:
    • Начальное время: часы H=9H = 9, минуты M=0M = 0.
  2. Для каждого урока от 11 до NN выполняем:
    • Добавляем 45 минут (время урока).
    • Если после урока ещё есть перемена (т.е. это не последний урок), добавляем:
      • 5 минут, если урок нечётный.
      • 15 минут, если урок чётный.
  3. После добавления времени проверяем, не перешли ли мы за 60 минут. Если да:
    • Увеличиваем часы на M//60M // 60 (целое количество часов).
    • Обновляем минуты M%60M \% 60.

Код на Python

Вот решение в виде кода:

python
# Ввод номера урока N = int(input())

# Начальное время H = 9 # Часы M = 0 # Минуты

# Цикл по всем урокам до N-го for lesson in range(1, N + 1): # Добавляем 45 минут за урок M += 45 # Проверяем, если после урока идёт перемена (но не после последнего урока) if lesson != N: if lesson % 2 == 1: # Нечётный урок M += 5 else: # Чётный урок M += 15 # Корректируем часы и минуты if M >= 60: H += M // 60 M = M % 60

# Вывод результата print(H, M)


Объяснение кода на примере

Рассмотрим пример: N = 3.

  1. Начинаем с 9:00.
  2. Первый урок: добавляем 45 минут → 9:45. После него перемена 5 минут → 9:50.
  3. Второй урок: добавляем 45 минут → 10:35. После него перемена 15 минут → 10:50.
  4. Третий урок: добавляем 45 минут → 11:35. После этого урока перемены нет.

Ответ: 11 35.


Примеры ввода и вывода

ВводВывод
19 45
210 50
311 35
412 40
513 25
614 30
715 15
816 20
917 05
1018 10

Таким образом, программа корректно определяет время окончания урока для любого NN от 1 до 10.

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос