现在世界各国通用一星期七天的制度。这个制度最早由君士坦丁大帝(Constantine the Great)制定。他在公元321年3月7日正式宣布7天为1周,该天为星期一,这个制度一直沿用至今。
一星期为什么定为七天?古代神话中将日、月、火、水、木、金、土七星中每一颗作为一日的保护神,轮流值日,周而复始,“星期”的名称也因此而起。
一周7天的英文名称是Sunday(星期天)、Monday(星期一)、Tuesday(星期二)、Wednesday(星期三)、Thursday(星期四)、Friday(星期五)、Saturday(星期六)。
星期日Sunday中的sun(太阳)和星期一Monday中的缩写了的moon(月亮)自不用说。
而星期二Tuesday是以北欧神话中的战神Tyr命名的,而他正等于罗马神话中的Mars。
星期三Wednesday的原形其实意味Woden’s day,而商业之神Woden相当于罗马神话中的Mercury。
星期四Thursday是以雷神Thor命名的,他相当于罗马神话中的Jupiter(也即希腊神话中的Zeus)。
星期五Friday则是以北欧神话中的爱神Freya(一说为Frigg)命名,她相当于罗马神话中的Venus,这也正是为什么欧美人喜欢把结婚的日子定在星期五的原因。
最后,星期六是以农神Saturn来命名的。随着文化的传播,北欧这种命名星期制的方法传到了大不列颠。因此,经过字母拼写上的一些改变,就发展成为我们今天所见到一周七天了。
历史或将来某一天究竟是星期几?这是一个有趣的问题。倘若没有闰年,问题很好算,由于有闰年,问题便复杂多了。
以下就是公元y年第n天是星期几的计算公式:
上式s表示公元年数,n表示该年从元旦算起,到该年几月几号为止的天数,该年若是闰年,二月份为29天,若是平年则为28天。其余月份的天数为:1、3、5、7、8、10、12月为31天,4、6、9、11月为30天。闰年的规定是能被4整除不能被100整除的年份为闰年,能被400整聚合物 也是闰年。在上式中,符号[]表示取整。
s除以7,如果能除尽,则这一天为星期天,否则余数为几,则为星期几。
C语言代码如下:
#include ";
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)
week.format();
printf("公元%d年%d月%d日是星期%d\n",y,m,d,week);
}