pascal高手进(十分紧急)

来源:百度知道 编辑:UC知道 时间:2024/06/02 08:32:26
万分紧急,请看一下这道题:(关于丑数的)
rogram j;
var
a,b,c,d,e,f,n:integer;
begin
read(n);
while c<>n do
begin
inc(a);
inc(b);
if a mod b=0 then
if (b=3) or (b=5) or (b=2) then
inc(c);
if b=a then
b:=0;
end;
write(a);
end.
请问为什么报错被零除????(急!!!!!!)
请说清楚是哪一个变量没有赋值?

你的程序循环有问题:不断循环而不跳出,导致a,b数据溢出,b最终变成了0,所以a mod b报错#200
自己改改程序
另外你的a,b,c都没有赋初值啊,这是一个不好的习惯。

没有赋值

接1楼

a mod b报错
因为b没有赋值,程序默认取b=0