
Pascal编程问题
1.编程画出如下图形:如N=51234543211234321123211211如N=712345676543211234565432112345432112343211...
1.编程画出如下图形:
如N=5
123454321
1234321
12321
121
1
如N=7
1234567654321
12345654321
123454321
1234321
12321
121
1
2.警察局抓了A、B、C、D四名嫌疑犯,其中有一个是小偷,审问中:
A说:“我不是小偷。”
B说:“C是小偷。”
C说:“小偷肯定是D”。
D说:“C冤枉人!”
已知三人说的是真话,一人说的是假话,问到底谁是小偷。
(我已经知道C是小偷,请用PASCAL编程写出答案)。 展开
如N=5
123454321
1234321
12321
121
1
如N=7
1234567654321
12345654321
123454321
1234321
12321
121
1
2.警察局抓了A、B、C、D四名嫌疑犯,其中有一个是小偷,审问中:
A说:“我不是小偷。”
B说:“C是小偷。”
C说:“小偷肯定是D”。
D说:“C冤枉人!”
已知三人说的是真话,一人说的是假话,问到底谁是小偷。
(我已经知道C是小偷,请用PASCAL编程写出答案)。 展开
12个回答
展开全部
那位仁兄的答案是错的额,你判断闰年有问题,真正闰年的定义是:年号是400的整倍数或4的整倍数(但非100的倍数),也就是说2000是闰年,2004年也是闰年,但3000年不是闰年。
var
a,b,c:integer;
begin
readln(a,b);
case
b
of
1,3,5,7,8,10,12:c:=31;
4,6,9,11:c:=30;
2:if
a
mod
4=0
then
begin
c:=29;
if
(a
mod
100=0)and(a
mod
400<>0)
then
c:=28;
end
else
c:=28;
end;
writeln(c);
end.
var
a,b,c:integer;
begin
readln(a,b);
case
b
of
1,3,5,7,8,10,12:c:=31;
4,6,9,11:c:=30;
2:if
a
mod
4=0
then
begin
c:=29;
if
(a
mod
100=0)and(a
mod
400<>0)
then
c:=28;
end
else
c:=28;
end;
writeln(c);
end.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.program ssy;
var i,e:integer;
begin
read(n);
assign(output,'tuxing.out');
rewrite(output);
for i:=n downto 1 do
begin
for e:=1 to i do write(e);
for e:=i-1 downto 1 do write(e);
writeln;
end;
close(output);
end.
2.program xt;
var thief:char;
begin
assign(output,'xt.out');
rewrite(output);
for thief:='a'to'd'do
if ord(thief<>'a')+ord(thief='c')+ord(thief='d')+ord(thief<>'d')=3 then writeln('the thief is',' ',thief);
close(output);
end.
第二题说明一下: A说:“我不是小偷。” 表达式为 'a'<>thief
B说:“C是小偷。” 表达式为 'c'=thief
C说:“小偷肯定是D” 表达式为 'd'=thief
D说:“C冤枉人!” 表达式为 'd'<>thief
用一个循环依次将thief赋值为a,b,c,d(即将a,b,c,d分别假定为小偷去检验),又因为
ord(true)=1
ord(false)=0
原题已说三人说的是真话,一人说的是假话
所以如果当thief被赋的值就是小偷时,thief<>'a', thief='c',thief='d',thief<>'d'这几个布尔变量就有3个为true,一个为false
所以ord(thief<>'a')+ord(thief='c')+ord(thief='d')+ord(thief<>'d')=3 这时就读出 writeln('the thief is',' ',thief);
var i,e:integer;
begin
read(n);
assign(output,'tuxing.out');
rewrite(output);
for i:=n downto 1 do
begin
for e:=1 to i do write(e);
for e:=i-1 downto 1 do write(e);
writeln;
end;
close(output);
end.
2.program xt;
var thief:char;
begin
assign(output,'xt.out');
rewrite(output);
for thief:='a'to'd'do
if ord(thief<>'a')+ord(thief='c')+ord(thief='d')+ord(thief<>'d')=3 then writeln('the thief is',' ',thief);
close(output);
end.
第二题说明一下: A说:“我不是小偷。” 表达式为 'a'<>thief
B说:“C是小偷。” 表达式为 'c'=thief
C说:“小偷肯定是D” 表达式为 'd'=thief
D说:“C冤枉人!” 表达式为 'd'<>thief
用一个循环依次将thief赋值为a,b,c,d(即将a,b,c,d分别假定为小偷去检验),又因为
ord(true)=1
ord(false)=0
原题已说三人说的是真话,一人说的是假话
所以如果当thief被赋的值就是小偷时,thief<>'a', thief='c',thief='d',thief<>'d'这几个布尔变量就有3个为true,一个为false
所以ord(thief<>'a')+ord(thief='c')+ord(thief='d')+ord(thief<>'d')=3 这时就读出 writeln('the thief is',' ',thief);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.
program p1;
var
i,j,n:integer;
begin
for i:=1 to n do
begin
for j:=1 to (5-i+1) do
write(j);
for j:=(5-i) downto 1 do
write(j);
writeln;
end;
end.
2.
var
i:integer;
begin
for i:=1 to 4 do
if(ord(i=1)+ord(i<>3)+ord(i<>4)+ord(i=4))=1 then writeln(chr(ord('A')+i-1));
end.
希望提问者能看得懂我的答案!!!!
(渴望也行 (^o^) )!!!!!!!!!
楼上的作得不是不对,但太不容易理解!!!!!
(人家初学,还不懂)!!!!!
希望楼上的能加以改进!!!
(我的程序或许不是正宗的程序,但结果绝对正确!!!!)
(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)
请支持我!!
谢谢@@@
以下内容可以不看
{提一下:
http://59.61.214.20/judgeonline/
这里的题目较为简单 (但不要做难的---做不出的!)
刚才小偷那道,这里也有!!!}
program p1;
var
i,j,n:integer;
begin
for i:=1 to n do
begin
for j:=1 to (5-i+1) do
write(j);
for j:=(5-i) downto 1 do
write(j);
writeln;
end;
end.
2.
var
i:integer;
begin
for i:=1 to 4 do
if(ord(i=1)+ord(i<>3)+ord(i<>4)+ord(i=4))=1 then writeln(chr(ord('A')+i-1));
end.
希望提问者能看得懂我的答案!!!!
(渴望也行 (^o^) )!!!!!!!!!
楼上的作得不是不对,但太不容易理解!!!!!
(人家初学,还不懂)!!!!!
希望楼上的能加以改进!!!
(我的程序或许不是正宗的程序,但结果绝对正确!!!!)
(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)(^o^)
请支持我!!
谢谢@@@
以下内容可以不看
{提一下:
http://59.61.214.20/judgeonline/
这里的题目较为简单 (但不要做难的---做不出的!)
刚才小偷那道,这里也有!!!}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.program tuxing;
const n=5;
var i,e:integer;
begin
assign(output,'tuxing.out');
rewrite(output);
for i:=1 to n do begin
for e:=1 to n+1-i do write(e);
for e:=n-i downto 1 do write(e);
writeln;
end;
close(output);
end.
2.program xt;
var thief:char;
begin
assign(output,'xt.out');
rewrite(output);
for thief:='a'to'd'do
if ord(thief<>'a')+ord(thief='c')+ord(thief='d')+ord(thief<>'d')=3 then writeln('the thief is',' ',thief);
close(output);
end.
第二题说明一下: A说:“我不是小偷。” 表达式为 'a'<>thief
B说:“C是小偷。” 表达式为 'c'=thief
C说:“小偷肯定是D” 表达式为 'd'=thief
D说:“C冤枉人!” 表达式为 'd'<>thief
用一个循环依次将thief赋值为a,b,c,d(即将a,b,c,d分别假定为小偷去检验),又因为
ord(true)=1
ord(false)=0
原题已说三人说的是真话,一人说的是假话
所以如果当thief被赋的值就是小偷时,thief<>'a', thief='c',thief='d',thief<>'d'这几个布尔变量就有3个为true,一个为false
所以ord(thief<>'a')+ord(thief='c')+ord(thief='d')+ord(thief<>'d')=3 这时就读出 writeln('the thief is',' ',thief);
const n=5;
var i,e:integer;
begin
assign(output,'tuxing.out');
rewrite(output);
for i:=1 to n do begin
for e:=1 to n+1-i do write(e);
for e:=n-i downto 1 do write(e);
writeln;
end;
close(output);
end.
2.program xt;
var thief:char;
begin
assign(output,'xt.out');
rewrite(output);
for thief:='a'to'd'do
if ord(thief<>'a')+ord(thief='c')+ord(thief='d')+ord(thief<>'d')=3 then writeln('the thief is',' ',thief);
close(output);
end.
第二题说明一下: A说:“我不是小偷。” 表达式为 'a'<>thief
B说:“C是小偷。” 表达式为 'c'=thief
C说:“小偷肯定是D” 表达式为 'd'=thief
D说:“C冤枉人!” 表达式为 'd'<>thief
用一个循环依次将thief赋值为a,b,c,d(即将a,b,c,d分别假定为小偷去检验),又因为
ord(true)=1
ord(false)=0
原题已说三人说的是真话,一人说的是假话
所以如果当thief被赋的值就是小偷时,thief<>'a', thief='c',thief='d',thief<>'d'这几个布尔变量就有3个为true,一个为false
所以ord(thief<>'a')+ord(thief='c')+ord(thief='d')+ord(thief<>'d')=3 这时就读出 writeln('the thief is',' ',thief);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
哇哇!!! 现在还有人学PASCAL编程?
我是玩Delphi 的!!! 它也是基于pascal的!!! 呵呵!
兄弟。我可没有叫你换哈!!只是现在正在陪美女聊天。没来得急给你写代码。就敲了回车了!!!
不要乱想哈!!!
楼上。楼下的兄弟可不要乱讲哈。怕怕!
我是玩Delphi 的!!! 它也是基于pascal的!!! 呵呵!
兄弟。我可没有叫你换哈!!只是现在正在陪美女聊天。没来得急给你写代码。就敲了回车了!!!
不要乱想哈!!!
楼上。楼下的兄弟可不要乱讲哈。怕怕!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询