计算某天是星期几的公式推理?下面是我查到的公式!我想知道这些公式里的一个或全部的推理过程!谢谢?

一:常用公式
W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + D
蔡勒(Zeller)公式
w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1

对蔡勒(Zeller)公式的改进
W=[y/4]+r (y/7)-2r(c/4)+m’+d
基姆拉尔森计算公式
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7

对于 W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + D
mod 7
为了求出Y年M月D日是星期几,只需求从公元1年1月1日至公元Y年M月D日包含的总天数除以7的余数,自然关键是求这个总天数,可以如下分析
1 假设只有在平年的情况下,Y年之前Y-1中包含的天数为365*(Y-1)
2 考虑闰年的情况。由格里历设闰规定知,每4年一闰,但逢100年除外,然而每400年又要加一个闰日。于是Y-1年共有闰日[(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] ,再加上M月D日包含的天数,即可得总天数
3 因为365≡1(mod 7),所以365*(Y-1)≡(Y-1)(mod 7),这样,在求总天数除以7的余数时,可把365*(Y-1)简化为(Y-1)即W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + D

《从惊讶到思考---数学的印记》中有对蔡勒公式的解读

参考资料:从惊讶到思考---数学的印记

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-10
对蔡勒(Zeller)公式的改进
W=[y/4]+r (y/7)-2r(c/4)+m’+d
基姆拉尔森计算公式
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 这个不难的 你自己动脑筋想想一下就明白了 加油!!!
相似回答