怎样计算再过几天是星期几?

如题所述

设今天是星期X(1≤X≤7),求再过Y天是星期几?答:星期(X+Y)/7的余数

例如:今天星期一(X=1),

再过1天(Y=1,也就是明天)就是:(1+1)/7······2(星期二);

再过7天(Y=7,也就是过一星期)就是:(1+7)/7 = 8/7······1(星期一);

再过31天(Y=31,也就是下个月的今天)就是:(1+31)/7 = 32/7······4(星期四);

再过365天(Y=365,也就是明年的今天)就是:(1+356)/7 = 357/7······0(星期天);

扩展资料:

在整数的除法中,只有能整除与不能整除两种情况。当不能整除时,就产生余数,取余数运算:a mod b = c(b不为0)表示整数a除以整数b所得余数为c,如:7÷3 = 2 ······1。

一个数除以另一个数,要是比另一个数小的话,商为0,余数就是它自己。[1] 例如:1除以2,商数为0,余数为1;2除以3,商数为0,余数为2。

余数的性质:

余数有如下一些重要性质(a,b,c均为自然数):

(1)余数和除数的差的绝对值要小于除数的绝对值(适用于实数域);

(2)被除数=除数×商+余数;

除数=(被除数-余数)÷商;

商=(被除数-余数)÷除数;

余数=被除数-除数×商。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2019-08-29
设今天是星期 M(1≤M≤7),求再过 N 天是星期几?
答:(M+N)mod 7;
(1)mod:求余数运算的符号;
(2)结果:0 表示是【星期天】;其他的,是几就表示是星期几;

例如:今天星期四(M=4),
再过1天(N=1,也就是明天)就是:(4 + 1) mod 7 = 5(星期五);
再过7天(N=7,也就是过一星期)就是:(4 + 7) mod 7 = 11 mod 7 = 4(还是星期四);
再过31天(N=31,也就是下个月的今天)就是:(4 + 31) mod 7 = 35 mod 7 = 0(星期天);
再过365天(N=365,也就是明年的今天)就是:(4 + 365) mod 7 = 369 mod 7 = 5(星期五);本回答被网友采纳
第2个回答  2019-01-17
再过N天使星期几,只需要算出N/7余几就可以了,余几就从今天往后数几天,就是星期几了。
比如,今天星期2,再过251天使星期几?
251/7=35……6,6天后是星期1,那么251天后也是星期1。
第3个回答  2019-06-18
#include<stdio.h>
main()
{int m,n,z;
printf("今天是星期1,2,3,4,5,6,7,和再过的天数\n");
scanf("%d %d",&m,&n);
z=(m+n)%7;
switch (z)
{
case 0 :printf("今天是星期%d,%d天后是星期日",m,n); break;
case 1 :printf("今天是星期%d,%d天后是星期一",m,n); break;
case 2 :printf("今天是星期%d,%d天后是星期二",m,n); break;
case 3 :printf("今天是星期%d,%d天后是星期三",m,n); break;
case 4 :printf("今天是星期%d,%d天后是星期四",m,n); break;
case 5 :printf("今天是星期%d,%d天后是星期五",m,n); break;
case 6 :printf("今天是星期%d,%d天后是星期六",m,n); break;
}
}
相似回答