从这个在线计算器:http://homer.freeshell.org/dd.cgi使用它的数据我已经成功编写了一个工作版本,但是它的数据仅限于1500年到2600年。我想修改(并且做一个更好的)这样我就可以计算任何> 2600的年份。
参考表X,是否真的有一个公式可以计算所有基准世纪(2600年以上)的基准世界末日?
我自己尝试过将几个世纪的值设置得比这个高,例如2700 给了我一个基本的末日'00',2800 给了'02;,2900 又回到了'00'......
感谢帮助。
是为人类干净利落地解释世界末日算法的最佳计算器,但有一点需要注意。 如果输入
2/29/1900,它会说今天是星期四。嗯,没有 2/29/1900,因为它不是闰年。 当然,如果您输入 1/35/2016,它也会为您“垃圾进垃圾出”。
想象一年只有 364 天,那么每个日期的星期几将年复一年地永远不会改变,因为
mod(364,7)==0
。
但是我们一年有 365 天,所以这一天每年前进 1,这就是第二个术语
mod(year, 7)
的由来。
另外,每4年有一个闰年,为最后一届贡献了
mod(year, 4)
。
但是每 100 年,您减去一个闰年,每 400 年,您添加一个闰年。这就是第一个术语“3,2,0,5”的用武之地。
你看,都是因为这个闰年,还有
mod(365,7)==1
生意。
7/11, 5to9 对记忆Z表有很大帮助。
c = y % 100
centuryanchor = 5*(c % 4) % 2 + 2