判断三个整数是否相邻
答案:3 悬赏:40 手机版
解决时间 2021-08-15 13:02
- 提问者网友:原来太熟悉了会陌生
- 2021-08-14 13:34
判断三个整数是否相邻,是输出"TRUE",否则输出"FALSE"。
我的答案是这样的:
program P228;
var
a,b,c,d:longint;
begin
readln(a,b,c);
d:=a;
if b-d=1 then d:=b else writeln('FALSE');
if c-d=1 then writeln('TURE');
end.
各位仁兄,有哪里不对吗?
应该怎样改???
我用的是Pascal语言。
最佳答案
- 五星知识达人网友:西岸风
- 2021-08-14 14:17
先说一个反例:a=5,b=10,c=6;
因为在进行完第一个if后,已经输出结果,但他仍会进行下一个if,所以出错;
我来做一下吧:
program p228;
var i,j:integer;
a:array[1..3]of integer;
begin
for i:=1 to 3 do read(a[i]);
for i:=1 to 2 do
forj:=i+1 to 3 do
if a[i]>a[j] then 交换;
if ((b-a=1)and(c-b=1))then writeln('true')
else writeln('false');
end.
全部回答
- 1楼网友:上分大魔王
- 2021-08-14 16:19
thank
- 2楼网友:过活
- 2021-08-14 15:16
改成这样:
program P228; var a,b,c,d:longint; flag:boolean; begin readln(a,b,c); d:=a;flag:=true; if b-d=1 then d:=b else flag:=false; if c-d<>1 then flag:=false; writeln(flag); readln; end.
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯