巧算星期几

巧算星期几,第1张

第1题
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,星期日。

首先,把你想要知道的日期号,加上该月份代号,再除以7,能整除的就是星期日;不能整除的,余数是几,那天就是星期几。如果日期号和月份代号相加的和小于7,那么这个和是几,那天就是星期几。
例如:想知道2006年5月20日是星期几,就把“20”加上2006年5月的代号“0”,所得的和是
20
,再用20除以7,余数是6,那么2006年5月20号就是星期6。
再举个例子:想知道2006年2月3日是星期几,那么就把“3”加上2月的代号“2”,和为5。由于5小于7,所以2006年2月3日就是星期5。
由于各年的月份代号不尽相同,下面给出各年月份代号的计算方法:
首先要有一本日历,然后随便找一天,例如2006年8月5日,那天是星期6,就把“6”减去“5”,所得的差为“1”,那么2006年8月的代号就是1,其他月份代号的计算方法可以次类推。
这个方法写成公式就是:该年月份代号=该月星期几-该月日期号。
注意:式中取该月日期号时,必须小于或等于7;取星期日时,数值按7计算,该月星期几的数值要大于日期号数值。

蔡勒(Zeller)公式,是一个计算星期的公式,用这个公式推算出是星期几。
w:星期;
w对7取模得:0-星期日,1-星期一,2-星期二,3-星期三,4-星期四,5-星期五,6-星期六
c:世纪减1(年份前两位数)
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周年国庆)是星期五。

计算公式:

如果1月1日是星期六,那么1月13日是星期几

解析:

第一步:确定首周起止日期。1月1日至1月7日为1周。

第二步:确定首周起止星期。这一周内第一天是星期六,所以最后一天是星期五。

第三步:确定题目中所涉及起止日期内总天数。1月1日至1月13日有13天。

第四步:确定总天数内整周数及余下天数。每7天为1周,13÷7=1(周)……6(天),合1周余6天。

第五步:确定日期对应的星期。整周的最后一天都是星期五,再数6天,就是第二周的星期四。即1月13日是星期四。

小结:由以上两个例题(均只涉及一个月之内)的思考和解答过程可以发现,由于日期分月连续编排,星期按周连续编排,星期的确定是有规律可循的。解答这类问题,一般遵循上面五步即可。

扩展资料

也可以用C语言求:

#include "stdafxh"

void main()

{

int s;

int y;

int m;

int d;

intarr[12] = {31,28,31,30,31,30,31,31,30,31,30,31};

int n = 0;

int week;

scanf("%d%d%D",&y,&m,&d);

if(y % 4 == 0 && y%100!=0 || y%400==0)

arr[1]=29;

for( int i = 0; i < m-1; i = i + 1 )

{

n = n + arr[i];

}

n = n+d;

s = y -1 + int((y-1)/4) - int((y-1)/100) + int((y-1)/400) + n;

week = s % 7;

if(week==7)

weekformat();

printf("公元%d年%d月%d日是星期%d\n",y,m,d,week);

}

分三步:
1、算出相距了几天,
2、再用结果除以7,
3、之前是星期几,加上余数就可以了,如果没余数,就不变
例题:如果6月1日是星期一,那么6月20日是星期几?
20-1=19(天)。。。。算出天数
19÷7=2(周)5(天)
余数是5,向后面推5天,星期一推5天就是星期六,即6月20日是星期六。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12802118.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存