恭喜,你发布的帖子
发布于 2025-07-20 19:53:10
3楼
括蔡勒公式(Zeller's formula)和基姆拉尔森计算公式,其中蔡勒公式适用于公历日期,需注意1月和2月需视为上一年的13月和14月计算。
?蔡勒公式(Zeller's Formula)?
蔡勒公式是计算公历日期对应星期几的经典算法,其标准形式为:
w=(d+?13(m+1)5?+y+?y4?+?c4??2c)mod??7w=(d+?513(m+1)?+y+?4y?+?4c??2c)mod7
?符号说明?:
?w?
:星期(0=星期六,1=星期日,2=星期一,…,6=星期五)。??1??2
?c?
:世纪数(年份前两位数,如2025年则c=20)。
?y?
:年份后两位数(如2025年则y=25)。
?m?
:月份(3≤m≤14,1月和2月视为上一年的13月和14月)。
?d?
:日数。
示例?:计算2025年7月4日(当前日期)的星期:
年份处理:c=20,y=25,m=7,d=4。
代入公式:
w=(4+?13×85?+25+?254?+?204??2×20)mod??7w=(4+?513×8?+25+?425?+?420??2×20)mod7
w=(4+20+25+6+5?40)mod??7=20mod??7=6w=(4+20+25+6+5?40)mod7=20mod7=6
结果为6,对应星期五。??1??3
?基姆拉尔森计算公式(Kim Larsen's Formula)?
另一种简化公式为:
w=(d+2m+?3(m+1)5?+y+?y4???y100?+?y400?)mod??7w=(d+2m+?53(m+1)?+y+?4y???100y?+?400y?)mod7
其中月份处理与蔡勒公式相同,但结果映射为0=星期一,6=星期日。??1??4
?注意事项?
?历法范围?
:蔡勒公式仅适用于1582年10月15日后的格里高利历。??1
?负数处理?
:若计算结果为负,需加7再取模。??5
请填写推广理由:
分享
只看
楼主