为什么1900年不是闰年
緣起
看到一段 C++ 的程序,為了介紹邏輯運(yùn)算符,讓判斷一個(gè)年份是不是閏年。
簡(jiǎn)而言之,如果某年的末尾不是 00,那么能整除 4 就是閏年;如果末尾是 00,那么能整除 400 才是閏年。
我就納悶了,不是 4 年一閏嗎?既然 1896 年是閏年,再過(guò) 4 年就是 1900 年,1900 怎么就不是閏年了?其實(shí)這個(gè)困惑在我上小學(xué)時(shí)候就有了。
原理
一年的時(shí)間(地球繞太陽(yáng)公轉(zhuǎn)周期),精確到秒(天文觀測(cè))是:
365天5小時(shí)48分45.5秒 = 365.24219328703703703(703的循環(huán)…)天
如果 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的循環(huán)…)天
終于逼近觀測(cè)結(jié)果了,因而就有了閏年的種種規(guī)定,所以 1900 年很不幸被排除掉閏年的身份。
【End】
參考資料:https://www.zhihu.com/question/25388501/answer/433635665
總結(jié)
以上是生活随笔為你收集整理的为什么1900年不是闰年的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python爬虫小工具——editplu
- 下一篇: C语言中的匿名结构体