主题:关于PASCAL的星期几问题的再编
fanhang
[专家分:0] 发布于 2006-01-10 02:01:00
[em18]急须各位帮忙.
问题是输路<月,日,星期>输出前月的相同日子的<月,日,星期>,前月同日不存在的日子时,输出前月的最后日的<月,日, 星期>
例 输路12月1日星期2,输出11月1日星期天.
输路12月31日星期4,输出11月30日星期1
要求使用列举型
请求最好写出程序的详细过程
回复列表 (共2个回复)
沙发
小田甜 [专家分:3910] 发布于 2006-01-14 13:58:00
二月多少天?
A:28;B:29;C:...
板凳
小田甜 [专家分:3910] 发布于 2006-01-14 14:18:00
const
d:array [1..12] of byte
=(31,28,31,30,31,30,31,31,30,31,30,31);
x:array [1..12] of byte
=( 3, 0, 3, 2, 3, 2, 3, 3, 2, 3, 2, 3);
var
yue,ri,xq:byte;
y,r,q:byte;
s:string;
begin
readln(yue,ri,xq);
if yue<>1 then y:=yue-1 else y:=12;
if ri>d[y] then r:=d[y] else r:=ri;
q:=(xq+7-x[y]) mod 7;if q=0 then q:=7;
write(yue:3,ri:3,q:3);
readln;
end.
我来回复