口算星期几

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

只要记住12个系数就行,这12个系数就是12个月的一号是星期几,再减1。
如7月1日是星期天,系数就是7-1=6,2月1日是星期四,系数就是3,口算时只要用该日期加该月系数,再除以7,如能整除,这一天就是星期天;如不能整除,余数是几就是星期几。
道理很简单,12个系数是必背的,当然每年都不同,就当是手机号码应该很容易背,背一次用一年,很值!在朋友面前露一手,说不定他们还称奇。
网上搜的,供参考。
历史上的某一天是星期几?未来的某一天是星期几?关于这个问题有这样的一种算法介绍如下:

某年某月某日是星期几的推算公式:

〔(χ-1)+“(χ-1)/4”-“(χ-1)/100”+“(χ-1)/400”+y〕÷7

这个公式中的χ表示那一年的公历年份数,y表示某日在那一年的第几天,“”表示整数商。计算所得的余数就是星期几(余数为0则是星期日)。

例1、 1980年6月1日是星期几?

分析:χ-1=1980-1=1979,“(χ-1)/4”=494,“(χ-1)/100”=19,

“(χ-1)/400”=4;y=31+29+31+30+31+1=153(天)。

解:(1979+494-19+4+153)÷7=2611÷7=373(余数为0)。

所以,1980年6月1日是星期日。
一、年码的计算

(1)21世纪年码算法:mod(X+int(X/4),7)

(X代表年份的后三位数字,如:2015年,这里X就代表15,int代表向下取整,mod代表取余)

(2)其它世纪的年码算法:

20世纪年码=21世纪年码+1,即 mod(X+int(X/4),7)+1

19世纪年码=21世纪年码+3,即 mod(X+int(X/4),7)+3

18世纪年码=22世纪年码=21世纪年码+5(或减2),即mod(X+int(X/4),7)+5



二、牢记月码

(1)任何世纪中的任何年份对应的月码都是相同的,十二个月分别对应的月码是:

51(26)2503514624(括号内的数字代表闰年时1月、2月的月码)

记忆方法:平年1、4、7月为5;2、8月为1;3、11月为2;5月为0;6月为3;9、12月为4;10月为6。闰年只需变1月为2,2月为6。

(2)闰年的通俗理解:平时除以4,逢千年除以400,整除者为闰年。

C语言描述为:(year%4==0&&year%100==0) || (year%400==0)

或 (n mod 4=0) and (n mod 100<>0)) or (n mod 400=0)



三、写下日码

日码最易得到,就是日期里的号数,例如: 8月20日,日码就是20。



四、最后的计算

算法:mod (年码+月码+日码,7)=星期几

若余数是0,即为星期日,余数为1即是星期一,如此类推!



五、整理思路

口诀:口算年码,牢记月码,写出日码,三者相加,和与七除,答案为余.

相关文档
最新文档