做软件测试实验时,碰到了比较有意思的题目:就是假设公元一年一月一日是星期一,随便输入一个年月日,即可知道是星期几。
(与真实不符)
原生js编程实现:
var
year =
prompt(
"请输入年:");
var
month =
prompt(
"请输入月:");
var
day =
prompt(
"请输入日:");
function
week(
year,
month,
day) {
var
alldays =
0;
for (
var
i =
1;
i <
year;
i++) {
if ((
i %
4 ==
0 &&
i %
100 !=
0) ||
i %
400 ==
0) {
alldays +=
366;
}
else {
alldays +=
365;
}
}
var
days = ((
year %
4 ==
0 &&
year %
100 !=
0) || (
year %
400 ==
0)) ?
29 :
28;
switch (
month -
1) {
case
11:
alldays +=
30;
case
10:
alldays +=
31;
case
9:
alldays +=
30;
case
8:
alldays +=
31;
case
7:
alldays +=
31;
case
6:
alldays +=
30;
case
5:
alldays +=
31;
case
4:
alldays +=
30;
case
3:
alldays +=
31;
case
2:
alldays +=
days;
case
1:
alldays +=
31;
}
alldays +=
day;
switch (
alldays %
7) {
case
1:
alert(
'星期一');
break;
case
2:
alert(
'星期二');
break;
case
3:
alert(
'星期三');
break;
case
4:
alert(
'星期四');
break;
case
5:
alert(
'星期五');
break;
case
6:
alert(
'星期六');
break;
case
0:
alert(
'星期日');
}
}
week(
year,
month,
day);