Перейти к основному содержимому

2. Программирование разветвляющихся алгоритмов

Алиас: часы.

Задание

Условие

Вывести на экран показания часов.

Входные данные

Часы и минуты в формате целых чисел.

Пример 1:

2 48

Пример 2:

5 00

Выходные данные

Результат должен быть представлен в смешанной текстово-числовой форме с учетом падежных окончаний. Результат выводится на новой строчке после ввода часов и минут в формате целых чисел. После вывода результата программа должна успешно завершиться без ожидания пользовательского ввода.

Пример 1:

2 48
2 часа 48 минут ночи

Пример 2:

5 00
5 часов утра ровно

Использовать следующие границы частей суток:

5 час <= утро < 12 час,
12 < день < 18 час,
18 <= вечер <= 23 час,
0 час < ночь < 5 час.

В случае ввода невозможных показаний часов выдать соответствующее сообщение:

24 03
Недопустимое время!

По результатам работы представить отчет.

Данные для отладки:

  • 12 00полдень,
  • 12 2312 часов 23 минуты дня,
  • 13 121 час 12 минут дня,
  • 21 339 часов 33 минуты вечера,
  • 00 00полночь,
  • 03 013 часа 1 минута ночи.

Указания по выполнению работы

Функция scanf_s не является обязательной частью стандарта языка C и на настоящий момент полностью поддерживается лишь в Microsoft Visual Studio. По мнению Microsoft, scanf_s является безопасной версией функции scanf (отсюда суффикс _ssecure).

предупреждение

Для выполнения задания необходимо использовать scanf вместо scanf_s, из-за того, что последняя не поддерживается набором компиляторов GCC, с помощью которого тестируется код.

осторожно

windows.h - Windows-специфичный заголовочный файл языка программирования С, в котором объявляются функции, предоставляющие интерфейс доступа к Windows API. Все Windows-специфичные заголовочные файлы запрещено использовать!

Проверка работы

Подготовленная программа для решения задания проверяется вручную преподавателем (визуальный контроль).

Методический материал

  1. Требования к отчету
  2. Рекомендации по разработке программы
  3. Контрольные вопросы:
    1. Для программ на C
    2. Для программ на C++