闰年计算器
结果
平年
该年天数
- 二月天数
- 28 天
- 下一个闰年
- 2,028
- 上一个闰年
- 2,024
公历的闰年规则有三句:四年一闰,百年不闰,四百年再闰。所以 2024 年是闰年,1900 年不是,2000 年是。这个闰年计算器可以判定 5 到 9995 之间任何一年,并同时给出那一年的天数、二月的天数,以及它前后最近的闰年。规则本身很短,手算也不难;用工具的理由是那两句例外,而真正会问到的年份,恰恰都是撞在例外上的那些。
这几个年份是不是闰年,每一档的规则是什么
| 年份 | 判定 | 这一档的判定规则 |
|---|---|---|
| 2024 | 闰年 | 能被 4 整除且不能被 100 整除,或者能被 400 整除 |
| 2000 | 闰年 | 能被 4 整除且不能被 100 整除,或者能被 400 整除 |
| 2026 | 平年 | 不能被 4 整除,或者能被 100 整除但不能被 400 整除 |
| 1900 | 平年 | 不能被 4 整除,或者能被 100 整除但不能被 400 整除 |
| 2100 | 平年 | 不能被 4 整除,或者能被 100 整除但不能被 400 整除 |
最后一列给出的是这一档的完整规则,所以两个闰年那一列看起来一样。真正决定每一行的是规则里的哪一条,写在下面:2024 与 2000 都是闰年,理由却不同——前者能被 4 整除且不能被 100 整除,后者能被 400 整除;1900 与 2100 则栽在同一条上,能被 100 整除但不能被 400 整除。
公式
闰年 =(年份 mod 4 = 0 且 年份 mod 100 ≠ 0)或 年份 mod 400 = 0
- year
- 要判定的年份,取值 5 到 9995
- daysInYear
- 闰年 366 天,平年 365 天
- februaryDays
- 闰年 29 天,平年 28 天——规则只动这一个月
- nextLeapYear
- 这一年的下一个闰年,不含这一年本身
- previousLeapYear
- 这一年的上一个闰年,不含这一年本身
用它确认某一年到底有没有闰日、在排期之前查出二月的天数,或者给四年一遇的活动找下一个闰年。真正有意思的几乎都是整百年:1900 年不是闰年,2000 年是,2100 年不是。只套用「能被 4 整除」这一条的做法会把这三个年份全判成闰年,其中两个是错的。
算例
2026 年 —— 普通的平年
- 2026 ÷ 4 = 506.5,连第一条都对不上,后面两条就不会再用到
- 平年 365 天,二月 28 天——规则只改变这一个月
- 前后最近的闰年分别是 2024 与 2028,各隔四年
- 两个邻年都不含它本身:无论输入哪一年,输出都严格在它之前和之后
最常见的情形,也是最不容易算错的一种。
2024 年 —— 只用四年一条就够了
- 2024 ÷ 4 = 506 正好整除,而 2024 不能被 100 整除,所以满足第一条
- 这一年因此有 366 天,二月有 29 天
- 前后最近的闰年是 2020 与 2028,尽管 2024 自己也是闰年
- 能被 400 整除那一条根本不会被检验,因为第一条已经定了答案
如果只按「四年一闰」加一天,每四个世纪大约会多出三天。后面两条整百年的例外,正是为了把这三天去掉。
1900 年 —— 能被 4 整除,仍然不是闰年
- 1900 ÷ 4 = 475 正好整除,只算到这一步的规则会判它是闰年
- 但 1900 能被 100 整除且不能被 400 整除,第二条把那个闰日收了回去
- 结果是一个 365 天的平年,二月 28 天
- 前后最近的闰年是 1896 与 1904——四年一次的节奏被打断了一轮
简化版的规则都会在这里答错,这也是一个计算器比一句口诀更值钱的地方。
局限
闰年是公历的性质,而公历本身就是一种近似:它大约每 3300 年相对季节漂移一天,至今没有为此设立修正。1582 年以前的年份按推算格里高利历处理,所以 1500 年在这里判定为平年,尽管在当时真正使用的儒略历里它是闰年。这个工具一次只判定一年,不能列出某个区间里的全部闰年。
常见问题
- 怎么判断某一年是不是闰年?
- 先看能不能被 4 整除。不能整除就是平年;能整除的还要再看两条:能被 100 整除但不能被 400 整除的是平年,能被 400 整除的是闰年。2024 年落在第一档,1900 年落在第二档,2000 年落在第三档。
- 2024 年是闰年吗?
- 是,因为 2024 能被 4 整除且不能被 100 整除。它有 366 天,二月有 29 天,前后最近的闰年是 2020 与 2028。能被 4 整除的年份就是闰年,除非撞上后面那两条整百年的例外——这正是单靠「四年一闰」会答错一部分年份的原因。
- 1900 年为什么不是闰年?
- 因为它能被 100 整除但不能被 400 整除。只算「能不能被 4 整除」的规则会把 1900 判成闰年,而它在儒略历下确实曾经是闰年;公历改革把整百年的闰日收了回去,除非那一年还能被 400 整除。2000 年正是因此保住了 2 月 29 日,2100 年则会失去它。
- 二月有多少天?
- 平年 28 天,闰年 29 天,二月是唯一一个会被规则改变长度的月份。其余十一个月固定是 31 天或 30 天,所以一年是 365 天还是 366 天,完全取决于这一个月。想知道具体某一年的二月有多少天,把年份填进去就会直接给出。
- 下一个闰年是哪一年?
- 2026 年之后的下一个闰年是 2028 年。这一页对任何年份都会同时给出前后两个邻年,所以不用逐年往后数。间隔通常是四年,只有跨过被跳过的整百年时才会拉长到八年——1896 年到 1904 年就是这样一个间隔。
参考资料
- 闰年:历法中的天文修正 — 中国科学院新疆天文台
- 才 28 号,怎么就月末了? — 中国科学院紫金山天文台(科普中国)