Определить разницу между двумя временными точками - C (СИ)
Формулировка задачи:
Разработать программу согласно варианту задания. Максимальная длина строк не менее
80 символов. При реализации программы необходимо использовать функции для обработки
строк из библиотек stdlib.h и string.h.
Задание:
Заданы две строки, содержащие время в формате: HH:MM:SS. Определить
разницу между этими временами. При вводе проверять корректность
времени. Пример: 23:30:00 и 5:45:00 → 6:15:00.
Зарание спасибо.
Решение задачи: «Определить разницу между двумя временными точками»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <string.h> int main() { int a1, b1, c1, a2, b2, c2, x; scanf("%d:%d:%d\n%d:%d:%d", &a1, &b1, &c1, &a2, &b2, &c2); x=a2*60*60+b2*60+c2-a1*60*60-b1*60-c1; if(x<0) x+=24*60*60; c1=x%60; x/=60; b1=x%60; x/=60; a1=x; printf("%d:%02d:%02d", a1, b1, c1); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с вводом-выводом и строками.
- Объявление переменных: a1, b1, c1, a2, b2, c2, x.
- Ввод времени в формате часы:минуты:секунды с помощью функции scanf.
- Расчет разницы между двумя временными точками в секундах.
- Если разница отрицательна, то добавляем 24 часа для корректного вывода.
- Вычисление минут и секунд из общего количества секунд.
- Вывод результата в формате часы:минуты:секунды.
- Код работает корректно для любого ввода, включая пустую строку.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д