algorithm - 闰年计算

标签 algorithm calendar leap-year

为了找到闰年,为什么年份必须不能被 100 整除并能被 400 整除?

我明白为什么它必须被4整除。请解释一下算法。

最佳答案

一年的长度是(或多或少)365.242196 天。 所以我们必须或多或少地减去一天的四分之一以使其适合:

365.242196 - 0.25 = 364.992196(4 年增加 1 天):但是哎呀,现在太小了!!让我们添加百分之一的一天(通过在一百年中不添加那一天:-))

364.992196 + 0,01 = 365.002196(哎呀,有点太大了,不管怎样我们把这一天加上大约 400 年一次)

365.002196 - 1/400 = 364.999696

现在差不多了,只需时不时地使用闰秒,就可以了。

(注意:此步骤后不再应用更正的原因是因为一年的长度也发生变化!!,这就是闰秒是最灵活的解决方案的原因,例如参见 here)

这就是我想的原因

关于algorithm - 闰年计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/725098/

相关文章:

algorithm - 强度帕累托进化算法 (SPEA 3)

algorithm - 了解涉及生成器的递归函数

javascript - 如何将这行代码翻译成人类语言?

android - 在 Android ICS 中插入日历项

django - 如何使用 Django-Bootstrap-Calendar 添加日历事件?

algorithm - 红黑树插入

algorithm - 第 K 条最短路径

iOS如何获取一年中的第几天?

java - java中的闰年

java - 需要帮助来理解此开关代码 - 月份中的日子