4月有30天,30÷7=4余2天,4个星期一定有4个星期六与4个星期天,而“4月份共有5个星期六和5个星期日”,说明剩下两天一定是星期六和星期天,(甚至可以知道4月开始两天是星期六和星期天)所以5月1日是星期一。
第2题
6月有30天,6月1日到7月1日,经过30天。
30÷7=4余2,相当于星期五又过了2天,当然是5+2=7,星期日。蔡勒(Zeller)公式:是一个计算星期的公式。 随便给一个日期,就能用这个公式推算出是星期几。 蔡勒公式如下: W = [C/4] - 2C + y + [y/4] + [13 (M+1) / 5] + d - 1 公式中的符号含义如下: w:星期; w对7取模得:0-星期日,1-星期一,2-星期二,3-星期三,4-星期四,5-星期五,6-星期六 c:世纪(前两位数) y:年(后两位数) m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1、2月要看作上一年的13、14月来计算,比如2003年1月1日要看作2002年的13月1日来计算) d:日 [ ]代表取整,即只要整数部分。 下面以中华人民共和国成立100周年纪念日那天(2049年10月1日)来计算是星期几,过程如下: w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1 =49+[49/4]+[20/4]-2×20+[26×(10+1)/10]+1-1 =49+[1225]+5-40+[286] =49+12+5-40+28 =54 (除以7余5) 即2049年10月1日(100周年国庆)是星期五。 再比如计算2006年4月4日,过程如下: w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1 =6+[6/4]+[20/4]-220+[26(4+1)/10]+4-1 =-12 (除以7余2,注意对负数的取模运算!) 不过,以上的公式都只适合于1582年(我国明朝万历十年)10月15日之后的情形。罗马教皇格里高利十三世在1582年组织了一批天文学家,根据哥白尼日心说计算出来的数据,对儒略历作了修改。将1582年10月5日到14日之间的10天宣布撤销,继10月4日之后为10月15日。 后来人们将这一新的历法称为“格里高利历”,也就是今天世界上所通用的历法,简称格里历或公
星期五。
今年是闰年,共366天,(366+1)/7=52周余3天,今天是星期二,所以明年的今天是星期五。
例如:
1、2004年8月4日是星期三,再过100天:100/7=14……2,所以是需要用星期三加两天,结果就是星期五。
2、2004年9月1日是星期三,这一年的12月8日:这里涉及到了月份的问题,9月是有30天,10月是31天,11月是30天,除去9月1日外,共有29+31+30+8=98天,98/7=14,所以12月8日还是星期三。
定义
加法:把两个数合并成一个数的运算。
减法:在已知两个加数的和与其中的一个加数,求另一个加数的运算。
乘法:求两个数乘积的运算。
除法:已知两个因数的积与其中的一个因数,求另一个因数的运算。
一、基本思路:找到所求年月日的代码,相加后除以7,余数是几即为星期几如今天是2007年6月25日,年月日的代码分别是1,3,25,相加得29,29÷7=4……1,即今天为星期一因此,这种算法的关键就转变成了寻找“年月日的代码”了
二、找代码的方法:
1、年份的代码:最复杂一些
看这一年的第一天是星期几就为几,如2005年1月1日是星期六就为6,2006年1月1日是星期日就为7,2007年1月1日是星期一就为1……如果这一年是闰年,3月以后的代码需要加1,如2008年1月1日是星期二,1月到2月的年份代码为2,3月到12月的年份代码就为3
还可以根据周期进行推算,因为年份的代码是每7个数字为一个周期
下列一组年份的代码可供记忆及推算:
2007年——1
2008年1月和2月——2
2008年3月起——3
2009年——4
2010年——5
2011年——6
2012年1月和2月——7
2012年3月起——1
2013年——2
2、月份的代码:首先要熟记歌谣,“鹿儿来,五岭山,虎一嘶,鹿儿死”,翻译成数字就是——
6
2
2
5
0
3
5
1
4
6
2
4
每个月份对应一个数字,即一月对6,二月对2,三月对2,依此类推
3、日期的代码:最简单,原来是几号,代码即为几
三、再举两个例子加以说明:
1、2007年7月1日:
年月日的代码相加=1+5+1=7,7÷7=1,没有余数,则这一天是星期日
2、奥运会开幕式:2008年8月8日
年月日的代码相加=3+1+8=12,12÷7=1……5,这一天是星期五
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)