根據年月日計算出該日為星期幾的方法:
一、修正數概念的引入:若X日為星期M,Y日為星期N(N>M),則稱d=N—M為修正數。則可得,若知道X日為星期M,又知道X日Y日之間的d,則可計算出N,從而N的大小,在這里,修正數0≦d≦6,含有修正數的運算,最后結果一律取原結果被7除所得余數。
二、修正數基本原理:
若a0與a1之間的修正數為d1,a1與a2之間為d2,an-1與an之間為dn
則易得a0與an之間的修正數d=d1+d2+……+dn
三、由某月某日是星期幾推知該月其他日期為星期幾
例如,已知1990年1月1日為星期一,則易得2日的d為1,3日的d為2……由于d以7為周期循環,所以8日為0,9日為1……,由此可推出每月31個日期的修正數
表一
日期
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
修正數d
0
1
2
3
4
5
6
則對于1990年1月任一日,星期N=d(日)+1
四、由某月某日是星期幾推知該年其他月份同一日為星期幾
例如已知1990年1月1日為星期一,由上表可得1月31日為星期三,可的2月1日為星期四,則二月的修正數為4-1=3,用同樣的方法可知其他月份的修正數
表二:每月修正數(不考慮閏年)
月份
1
2
3
4
5
6
7
8
9
10
11
12
修正數
0
3
3
6
1
4
6
2
5
0
3
5
由表一表二
這對于1990年任一日,可得星期M=d(月)+d(日)+1
對于閏年,由于其二月比平年多一日所以三月以后修正數有所改變,將在下一節進行介紹。
五、由某年某月某日為星期幾推知該世紀其他年份同月同日為星期幾
平年的365天,為52星期加一天,因此平年的第二年(假設也是平年)里的某一天,星期數總是比第一個平年的同一天往后推一天。則后一年的修正數為1,后兩年修正數為2(不考慮閏年),由此類推。若考慮閏年,即該年后一年為閏年,由于2月多一日,則三月以后修正數全部加1,考慮到制表的方便,在這里,,該閏年的修正數加1,三至十二月修正數不變,一至二月修正數減1,可得如下兩表
年份
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
修正數d
0
1
2
3
4
5
6
(括號中為閏年)
月份
1
2
3
4
5
6
7
8
9
10
11
12
修正數
0(6)
3(2)
3
6
1
4
6
2
5
0
3
5
由表一、三、四可得該世紀中任一日為星期M=d(年)+d(月)+d(日)+1
六、由某世紀某日推知其他世紀同年同月同日為星期幾
例如,已知1990年1月1日為星期一,求2090年1月1日為星期幾。
由于公元1582年天文學家利里奧對歷法的改革方案,采用了400年97閏法,即凡公元年號能被4整除為閏年,但公元年號為整百年時,須能被400整除者方為閏年,(如1600年、2000年)。其它為平年(如1700年、1900年)。對于公元年號為整百年的是閏年的世紀,它下一世紀相對于它的修正數為6,對于公元年號為整百年的是平年(如1700年、1900年)的世紀,它的下一世紀相對于它修正數為5,可得如下
世紀
1600
1700
1800
1900
2000
2100
2200
2300
修正數d
5
4
2
0
5
4
2
0
于是,將上述幾表合并,可得
世紀
1600
1700
1800
1900
2000
2100
2200
2300
修正數d
5
4
2
0
5
4
2
0
年份
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
修正數d
0
1
2
3
4
5
6
月份
1
2
3
4
5
6
7
8
9
10
11
12
修正數
0(6)
3(2)
3
6
1
4
6
2
5
0
3
5
日期
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
修正數d
0
1
2
3
4
5
6
(括號中為閏年修正數)
可得任一日星期M=d(世紀)+d(年)+d(月)+d(日)+1
本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請
點擊舉報。