Калькулятор вычитания времени
Вычитает одно время из другого. Введите оба времени в часах, минутах и секундах.
:
:
:
:
Логика вычислений
Калькулятор находит разницу между двумя моментами времени, заданными в часах, минутах и секундах. Сначала каждое время приводится к единой единице — секундам, затем из первого времени вычитается второе. Полученная разница раскладывается обратно на часы, минуты и секунды и может быть показана в выбранном формате (ЧЧ:ММ:СС, ЧЧ:ММ, ММ:СС либо суммарно в часах, минутах или секундах).
Каждое из времён переводится в секунды по числу часов, минут и секунд:
S₁ = h₁ × 3600 + m₁ × 60 + s₁ S₂ = h₂ × 3600 + m₂ × 60 + s₂
где:
- S₁, S₂ — первое и второе время в секундах, с;
- h₁, m₁, s₁ — часы, минуты и секунды первого времени;
- h₂, m₂, s₂ — часы, минуты и секунды второго времени.
Разница — это вычитание второго времени из первого. Если второе время больше первого, разница получается отрицательной, и у результата появляется знак «минус»:
D = S₁ − S₂
где:
- D — разница во времени, с (может быть отрицательной).
Для вывода в формате ЧЧ:ММ:СС берётся модуль разницы и раскладывается на целые часы, минуты и остаток секунд:
H = ⌊|D| / 3600⌋ M = ⌊(|D| mod 3600) / 60⌋ C = |D| mod 60
где:
- |D| — модуль разницы, с;
- H — целые часы разницы, ч;
- M — целые минуты разницы (остаток после часов), мин;
- C — секунды разницы (остаток после минут), с;
- ⌊ ⌋ — отбрасывание дробной части (целая часть от деления);
- mod — остаток от деления.
Помимо разложенного формата, разница выражается целиком в одной единице — делением модуля разницы на число секунд в часе или минуте:
T_ч = |D| / 3600 T_мин = |D| / 60 T_сек = |D|
где:
- T_ч — разница, выраженная всего в часах, ч;
- T_мин — разница, выраженная всего в минутах, мин;
- T_сек — разница, выраженная всего в секундах, с.
Знак «минус» (если второе время больше первого) сохраняется при выводе во всех форматах.
Примеры расчётов
| Время 1 (h:m:s) | Время 2 (h:m:s) | S₁ (с) | S₂ (с) | D = S₁ − S₂ (с) | Результат (ЧЧ:ММ:СС) | Комментарий |
|---|---|---|---|---|---|---|
| 10:30:00 | 08:15:00 | 39600 | 29700 | 9900 | 02:45:00 | Обычный случай, T_ч = 2,75 ч; T_мин = 165 мин |
| 12:00:00 | 12:00:00 | 43200 | 43200 | 0 | 00:00:00 | Одинаковые моменты — нулевая разница |
| 09:00:00 | 11:30:00 | 32400 | 41400 | −9000 | −02:30:00 | Второе время больше — знак «минус» |
| 23:59:59 | 00:00:00 | 86399 | 0 | 86399 | 23:59:59 | Граничный случай: почти полные сутки |
| 14:20:45 | 10:05:50 | 51645 | 36350 | 15295 | 04:14:55 | Разница с секундами, T_сек = 15295 с |
| 00:45:30 | 00:50:00 | 2730 | 3000 | −270 | −00:04:30 | Малый отрицательный интервал, T_мин = −4,5 мин |
