Вопрос задан 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.


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

Ввод Вывод
1 9 45
2 10 50
3 11 35
4 12 40
5 13 25
6 14 30
7 15 15
8 16 20
9 17 05
10 18 10

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

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

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

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

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