Подключиться через MCP →

Введите расчет

Математическая формула

Реклама

Результатов

Было времени
7:00
7:00 AM (24-hour: 07:00)
Час (24 ч) 7
Минуты 00
На сколько дней раньше 0

Что делает этот калькулятор

Инструмент показывает, сколько ровно было на часах за выбранное количество часов до заданного момента. Введите текущий час и минуты, укажите, на сколько часов нужно отмотать назад — и калькулятор выдаст прошедшее время в 24-часовом и 12-часовом форматах (AM/PM), а также подскажет, на сколько дней раньше приходится результат, если отсчёт перешёл через полночь.

Как пользоваться

1. Введите текущий час (0–23) и минуты (0–59). 2. Укажите, сколько часов назад нужно отсчитать — можно использовать дробные значения вроде 1.5 или 2.25 (четверть часа = 0.25). 3. Смотрите результат: в заголовке отображается время в формате ЧЧ:ММ, а в строках ниже — час в 24-часовом формате, минуты и количество дней, на которое сдвинулся отсчёт.

Как работает формула

Текущее время переводится в секунды, прошедшие с полуночи: \(\text{nowSeconds} = \text{час} \times 3600 + \text{минута} \times 60\). Затем мы вычитаем количество прошедших секунд (\(\text{hoursAgo} \times 3600\)) и берём остаток от деления на 86400 (число секунд в сутках). Так как при вычитании может получиться отрицательное число, мы прибавляем 86400 и снова берём остаток — благодаря этому ответ всегда оказывается корректным временем в диапазоне от 00:00 до 23:59. А если разделить исходную разницу на 86400 и округлить вниз, мы узнаем, на сколько полных суток назад приходится результат.

$$\text{Past Time} = \left[\left(\text{Hour} \times 3600 + \text{Minute} \times 60\right) - \text{Hours Ago} \times 3600 \right] \bmod 86400$$

$$\begin{gathered} t = \Big[\,S - \text{Hours Ago} \times 3600\,\Big] \bmod 86400 \\[1.5em] \text{where}\quad \left\{ \begin{aligned} S &= \text{Hour} \times 3600 + \text{Minute} \times 60 \\ \text{Past Hour} &= \left\lfloor t / 3600 \right\rfloor \\ \text{Past Minute} &= \left\lfloor (t \bmod 3600) / 60 \right\rfloor \end{aligned} \right. \end{gathered}$$

Временная шкала, показывающая, как вычтенные часы откатываются через полночь на предыдущий день
Когда вычитание переходит за полночь, результат откатывается на предыдущий день.
Циферблат часов со стрелкой, вращающейся назад к более раннему времени
Вычитание часов перемещает стрелки часов назад по циферблату.

Разбор примера

Сейчас 2:00 (02:00), и вы хотите узнать, сколько было времени 5 часов назад. \(\text{nowSeconds} = 2 \times 3600 = 7200\). \(\text{agoSeconds} = 5 \times 3600 = 18000\). Исходная разница \(= 7200 - 18000 = -10800\). После «заворачивания»:

$$(-10800 \bmod 86400 + 86400) \bmod 86400 = 75600 \text{ секунд} = 21{:}00 \ (9{:}00\ \text{PM})$$

— на сутки раньше.

Частые вопросы

Можно ли отсчитать больше 24 часов? Да. Строка «На сколько дней раньше» покажет, на сколько полных суток сдвинулся результат.

Используется ли моё реальное текущее время? Нет — вы сами задаёте опорное время, поэтому результат всегда воспроизводим и не зависит от часовых поясов.

Можно ли использовать доли часа? Да, применяйте десятичные значения: например, 0.5 для 30 минут или 0.25 для 15 минут.

Последнее обновление: