星期的计算星期的计算.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
星期的计算星期的计算

星期的计算 星期的计算是以数学方法计算出某一指定日期是在一周中的哪一天。多种数学算法可计算出过去或未来某一指定日期,是属于一周中的星期几,包括判决日法则(Doomsday Rule),Babwani公式等,但其实这些算法皆基于类似的机制相互变化而来,只是透过不同规则取得相同结果。 算法的典型应用,是计算某人的出生日期或某重大事件的发生日期,是在一周中的哪一天。 目录 [隐藏] 1 简介 1.1 最简单的方法一 1.2 最简单的方法二 2 有用的概念 2.1 同周月 2.2 同周年 3 算法 3.1 例子 3.2 世纪星期表 3.3 年份星期表 3.4 月份星期表 3.5 日期星期表 4 表格法 5 心算法 5.1 判决日 5.2 年数的计算 5.3 例子 6 高斯公式 6.1 例子 7 Babwani公式 8 蔡勒公式 9 主日字母 10 参见 [编辑]简介 差不多所有星期算法的基础皆可归纳如下: 从一个已知的日子作为起始日,一般采用世纪的第一天,通过同余7计算共过去了多少天。如将一周日子由0至6计算,结果将为一余数,如使用1至7计算,则7将代替0。 查表或使用已知规则计算上面的起始日,即该世纪开始的星期数。 查表或使用已知规则计算该年份开始的星期数。 计算该月份开始的星期数。 从该月份开始的计算该日的星期数。 简单来说,使用同余7表示在计算中可剔除7的倍数,如此可把7当作0、8当作1、9当作2、18当作4,如此类推。如果把星期日当作第0日,7日后(第7日)亦是星期日,而第18日则会与第4日相同,为星期日后的4天,即星期四。一些算法把所有加数先行计算,然后把7的倍数剔除,而其他算法则在每一步皆剔除7的倍数。两种做法皆可取,第一种做法较适用于计算机及电脑算法中,其他则较适用于心算。这些计算在熟习后,可在脑内计算出来。 [编辑]最简单的方法一 把四个数加起来然后除七的余数就是,如果整除就是星期日。这四个数分别是: Y(year):年份减2000 L(leap days):从2000年1月1日到该日之间的闰日数目 M(month):月份的代号,从一月到十二月分别是511462403513,即是一月是5,二、三月是1,四月是4,五月是6,如此类推,十二月是3 D(day):日号 就是说——Y+L+M+D(除7的余数) 举例说:2008年12月10日 (8+3+3+10)除7余3,即该日是星期三,其中Y=8、L=3(三个闰日分别是2000年2月29日、2004年2月29日和2008年2月29日)、M=3(12月的代号是3)、D=10 再举一例:2008年2月10日 (8+2+1+10)除7余0,即该日是星期日,其中Y=8、L=2(从2000年1月1日到2008年2月10日之间只有二个闰日:2000年2月29日和2004年2月29日)、M=1(2月的代号是1)、D=10 此公式的原理 365除七余一,所以每过一个平年,星期数便加一。日数亦是每过一日,星 期数加一。由于2000年1月1日是星期六,0+0+x+1=6, 故1月的代号是5,而1月有31日, (5+31) 除7余1, 故2月的代号是1,如此类推即可找出所有月份的代号。 变化一:可用负数,这时Y和L皆为负。1999年10月10日= —1—0+5+10=14≡0(mod 7)(除7的余数),星期日 变化二:把定点移至1900,相同方法加二(年份数和闰日数由1900年计起,月日计法不变)简单的说,在1700年或以后,2000年减100年的定点对应加2。原因:100年内有24闰日,+124=126一2≡一2 mod7,于是减100年就加2。 注:1700年、1800年、1900年皆不是闰年;2000年是闰年。 举例:1842年8月29日(南京条约签署日)——用四个方法计算,结果当然一样: 一、由1800年计起:4+(42+10+0+29)除7余1(从1800年1月1日到1842年8月29日间的闰日数目是10个,1800年不是闰年),即该日是星期一 二、由1900年计起:2+(-58-14+0+29)除7余1 三、由2000年计起:(-158-38+0+29)除7余1 四、由1700年计起:6+(142+34+0+29)除7余1 所以在某一计算中,只须用最方便的方法。 [编辑]最简单的方法二 把四个数加起来然后同余7就是所求的星期数。这四个数分别是: C:2(3-(c mod4))(格里历)、(4-c)mod7(儒略历)或查世纪星期表 Y:(y mod28+[y mod28/4])mod7(闰年1、2月份Y-1)或查年份星期表 M:((3.4+(m-3)mod12×2.6)mod7(1、2月份M-1)或查月份星期表 D:d mond7、或查日期星期表 就是说——W=(C+Y+M+D

文档评论(0)

enxyuio + 关注
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档