主题:新近在教学生时要求学生编一道求小数位数的程序
新近在教学生时要求学生编一道求小数位数的程序, 一位学生编程如下:
var i:real;
j:integer;
begin
readln(i);
repeat
i:=i*10;
j:=j+1;
until i=trunc(i);
writeln(j);
end.
输入:
23.234
输出:
3 ----->正确
输入:
7.98
输出:
15 正确的结果应为2.
请教各位大虾,问题出在什么地方. 是否是I实数有误差???
var i:real;
j:integer;
begin
readln(i);
repeat
i:=i*10;
j:=j+1;
until i=trunc(i);
writeln(j);
end.
输入:
23.234
输出:
3 ----->正确
输入:
7.98
输出:
15 正确的结果应为2.
请教各位大虾,问题出在什么地方. 是否是I实数有误差???