pascal语言解答判断某年某月的天数
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/20 00:43:13
pascal语言解答判断某年某月的天数
Description
输入年,月,然后告诉该月有多少天.
Input
输入只有一行,包括2个整数.之间用一个空格分开.
Output
输出只有一行(这意味着末尾有一个回车符号),包括1个整数.
Sample Input
2000 2
Sample Output
29
Hint
注意闰年的判断
每个都考虑下
我做的 为什么老是错 球高手看下
program Project1;
var
a,b:longint;
begin
readln(a,b);
if(a>0)and(b0)
then
begin
if (a mod 4=0)and(a mod 1000)or(a mod 400=0)
then
begin
if (b=2)
then writeln(29)
else if (b=1 and 3 and 5 and 7 and 8 and 10 and 12)
then writeln(31)
else
writeln(30);
readln;readln;
end
else
begin
if (b=2)
then writeln(28)
else if (b=1 and 3 and 5 and 7 and 8 and 10 and 12)
then writeln(31)
else writeln(30);
readln;readln;
end
end
end.
Description
输入年,月,然后告诉该月有多少天.
Input
输入只有一行,包括2个整数.之间用一个空格分开.
Output
输出只有一行(这意味着末尾有一个回车符号),包括1个整数.
Sample Input
2000 2
Sample Output
29
Hint
注意闰年的判断
每个都考虑下
我做的 为什么老是错 球高手看下
program Project1;
var
a,b:longint;
begin
readln(a,b);
if(a>0)and(b0)
then
begin
if (a mod 4=0)and(a mod 1000)or(a mod 400=0)
then
begin
if (b=2)
then writeln(29)
else if (b=1 and 3 and 5 and 7 and 8 and 10 and 12)
then writeln(31)
else
writeln(30);
readln;readln;
end
else
begin
if (b=2)
then writeln(28)
else if (b=1 and 3 and 5 and 7 and 8 and 10 and 12)
then writeln(31)
else writeln(30);
readln;readln;
end
end
end.
Week=(Day + 2*Month + 3*(Month+1)/5 + Year + Year/4 - Year/100 + Year/400) % 7 (其中的Year是4位数的,如2009.“%”号是等式除7取余数) 该式对应的与蔡勒公式有点区别:“0”为星期1,……,“6”为星期日! 该式可能与蔡勒公式的计算都是较为复杂,但有改进的地方:对于世纪这个概念不被引用,直接就是计算年代数(4位数)的!既不用再把 世纪 和 年代数(后两位)分开.
注意:在公式中有个与其他公式不同的地方: 把一月和二月看成是上一年的十三月和十四月,
http://baike.baidu.com/view/598757.htm
注意:在公式中有个与其他公式不同的地方: 把一月和二月看成是上一年的十三月和十四月,
http://baike.baidu.com/view/598757.htm