蔡勒(Zeller)公式,各位高手请看看我这是什么问题?
我用蔡勒(Zeller)公式算星期几
2005年03月02日 好像不适用
year +(year/4)+(century/4)-2*century+(26*(month+1)/10)+day-1
5 + (5/4) + (20/4) -2*20 + (26*(3+1)/10)+2 -1
=5+1 +5 -40 +(104/10)+2 -1
=11 -40 + 10 +2 -1
=-18
18/7 余数是 4
算出来是星期四
应该是星期三的
[解决办法]
楼主什么都没错,最后一步错了。
误:18/7 余数是 4
正:-18/7 余数是 3
注意这里的负号。
[解决办法]
c语言计算余数要如下:
r=x%7;
if(r <0)r+=7;