主题:我是小学生,我不会了,请帮助
ghchf2009
[专家分:0] 发布于 2009-12-11 21:25:00
第二题
var q:real;
begin
write ('q');readln(q);
if q>=10000 then ('q'='q*0.05')
else if q>=5000 then ('q'='q*0.03')
if q>=1000 then ('q'='q*0.02')
else (q=q*0);
writeln(q:0:0);
end.
在第一个“else”处,出现“error 122:Invalid variable reference 无效的变量引用 ”
不知错在哪?请帮忙。
谢谢
回复列表 (共3个回复)
沙发
wangminrui0804 [专家分:30] 发布于 2009-12-11 22:40:00
修改如下:
var q:real;
begin
write ('q');readln(q);
if q>=10000 then ('q'='q*0.05')
else if q>=5000 then ('q'='q*0.03');(加一个分号,因为下面没有了else,所以要有一个分号)
if q>=1000 then ('q'='q*0.02')
else (q=q*0);
writeln(q:0:0);
end.
板凳
abcwuhang [专家分:1840] 发布于 2009-12-13 12:07:00
修改如下:
var q:extended;{把它改成extended好点,因为用real误差较大}
begin
write('q');readln(q);
if q>=10000 then writeln('q=q*0.05'){输出格式有点问题,不知道是不是这样的,以下也是如此}
else if q>=5000 then writeln('q=q*0.03')
else if q>=1000 then ('q=q*0.02')
else writeln('q=q*0');
writeln(q:0:0);
end.
建议LZ把题目发上来,否则我们也不知道改的对不对。。。。。
3 楼
小田甜 [专家分:3910] 发布于 2009-12-13 17:55:00
var q:real;
begin
write ('q:');readln(q);
if q>=10000 then (q:=q*0.05)
else if q>=5000 then (q:=q*0.03)
else if q>=1000 then (q:=q*0.02)
else (q:=q*0);
writeln(q:0:0);
end.
我来回复