公式:
星期数计算公式
原创pc_286 博主文章分类:C# 工具 算法 框架 ©著作权
©著作权归作者所有:来自51CTO博客作者pc_286的原创作品,请联系作者获取转载授权,否则将追究法律责任
{ 年 + ( 年 / 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 就是星期二
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
【计算机组成原理】详谈计算机发展历程
【计算机组成原理】第一章——计算机系统概述详细介绍计算机的发展历程……
微型计算机 个人计算机 高级语言 -
WEEKDAY函数,计算日期星期数的好帮手!
WEEKDAY函数,计算日期星期数的好帮手!
值类型 嵌套 函数返回 -
通过指定日期获取星期数
通过指定日期获取星期数
通过 指定 日期 获取