星期数计算公式

公式:

{ + ( / 4 取整数 ) + ( / 400 取整数 ) – ( / 100 取整数 ) + [ ( 月日天数 + 当前天数 ) - 1] } Mod 7
得出的余数就是星期数。
星期数由 0 ~ 6 分别:
星期日 ----------- 0
星期一 ----------- 1
星期二 ----------- 2
星期三 ----------- 3
星期四 ----------- 4
星期五 ----------- 5
星期六 ----------- 6
月日天数: 平年 —— 闰年
一月 0+ 日数, 0+ 日数,
二月 3+ 日数, 3+ 日数,
三月 3+ 日数, 4+ 日数,
四月 6+ 日数, 0+ 日数,
五月 1+ 日数, 2+ 日数,
六月 4+ 日数, 5+ 日数,
七月 6+ 日数, 0+ 日数,
八月 2+ 日数, 3+ 日数,
九月 5+ 日数, 6+ 日数,
十月 0+ 日数, 1+ 日数,
十一月: 3+ 日数, 4+ 日数,
十二月: 5+ 日数, 6+ 日数,
计算闰年公式:能被4 整除 而不能被100 整除的 或者能被4 和400 整除 年份就是闰年
闰年 = ( 年mod 4 == 0 ) && ( 年mod 100 !=0)|| ( 年mod 400==0 )
事例:
日期 2010/9/28
Year = 2010
leap-year= ( (Year mod 4 ==0 ) &&( (Year mod 100 !=0 ) || (Year mod 400 == 0 ))) ? 闰年:平年
leap-year= 平年
月日天数 =5
星期数 = { 2010 + ( 2010 / 4 ) + ( 2010 / 400 ) – ( 2010 / 100 ) + [ ( 5 + 28 ) - 1 ] } Mod 7
星期数 = ( 2010 + 502 + 5 – 20 + 32 } Mod 7
星期数 = 2529 Mod 7
星期数 = 2
那么 2010/9/28 就是星期二

你可能感兴趣的:(星期数计算公式,计算星期数公式)