为什么1900年不是闰年

缘起

看到一段 C++ 的程序,为了介绍逻辑运算符,让判断一个年份是不是闰年。

请添加图片描述

简而言之,如果某年的末尾不是 00,那么能整除 4 就是闰年;如果末尾是 00,那么能整除 400 才是闰年。

我就纳闷了,不是 4 年一闰吗?既然 1896 年是闰年,再过 4 年就是 1900 年,1900 怎么就不是闰年了?其实这个困惑在我上小学时候就有了。

原理

一年的时间(地球绕太阳公转周期),精确到秒(天文观测)是:

365天5小时48分45.5秒 = 365.24219328703703703(703的循环…)天

如果 4 年一闰,平均每年就是:365+1/4=365.25 天

再每 100 年不闰,平均每年就是:365+1/4-1/100 =365.24 天

再每400年一闰:365+1/4-1/100+1/400 =365.2425 天

再每3200年不闰:365+1/4-1/100+1/400-1/3200 =365.2421875 天

再每 172800年闰:365+1/4-1/100+1/400-1/3200+1/172800 =365.24219328703703703(703的循环…)天

终于逼近观测结果了,因而就有了闰年的种种规定,所以 1900 年很不幸被排除掉闰年的身份。

【End】

参考资料:https://www.zhihu.com/question/25388501/answer/433635665

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值