通过MCP连接 →

输入计算

数学公式

广告

结果

总睡眠时长
8h 0m
8 hours total
小时 8
分钟 0
十进制小时数 8

什么是睡眠时长计算器?

睡眠时长计算器可以根据你的就寝时间和起床时间,精确算出你究竟睡了多久。它能正确处理跨过午夜的睡眠——比如晚上 11:00 入睡、早上 7:00 醒来——通过 mod-24(模 24)运算,始终为你算出一个合理的正数时长。

如何使用

先填写就寝时间的小时(0–23)和分钟(0–59),再用同样的方式填写起床时间。请使用 24 小时制:晚上 11:00 对应小时数 23,早上 7:00 对应小时数 7。计算器会返回你的总睡眠时长(以小时和分钟显示),并额外给出一个十进制小时数,方便你统计平均睡眠。

公式详解

就寝时间和起床时间会先各自换算成十进制小时(小时 + 分钟 ÷ 60)。当睡眠跨过午夜时,原始差值(起床 − 就寝)可能为负,因此我们用模 24 处理它:

$$\text{Sleep} = \left(\left(W - B\right) \bmod 24 + 24\right) \bmod 24$$

其中

$$\left\{ \begin{aligned} B &= \text{Bed Hour} + \dfrac{\text{Bed Min}}{60} \\ W &= \text{Wake Hour} + \dfrac{\text{Wake Min}}{60} \end{aligned} \right.$$

两次取模可以保证无论输入是什么,结果都落在 0 到 24 小时之间。

圆形 24 小时时钟,显示从入睡到醒来跨过午夜的弧
睡眠时长是 24 小时表盘上从入睡到醒来所划过的弧。

实例演示

就寝时间 23:00(23.0 小时),起床时间 07:00(7.0 小时)。差值 = \(7 - 23 = -16\)。代入 mod 24:

$$\left(-16 \bmod 24 + 24\right) \bmod 24 = 8$$

也就是说你正好睡了 8 小时,即 8 小时 0 分钟。

从入睡经午夜到醒来的水平时间轴,带有时长括号
线性时间轴视图:夜晚跨过午夜,括号标出总睡眠时长。

常见问题

如果我睡到中午之后还能算吗? 可以。只要起床和就寝时间在同一个 24 小时周期内,无论是隔夜睡眠还是当天睡眠,最长 24 小时以内的时长都能正确计算。

如果就寝和起床时间完全相同会怎样? 结果会是 0 小时——计算器会把相同的时间理解为没有可测量的睡眠,而不是完整的 24 小时。

我每天需要睡多久? 大多数成年人每晚需要 7–9 小时,不过个体差异较大。你可以用这个工具长期记录每晚的睡眠总量。

最后更新: