在下面的代码中,最后两次调用Ceil
给出了意外的结果。你能帮忙评论一下原因吗?
此外,如果误差(或偏差)是随机的,我能得到预期值吗?
Ceil(Calculated_Var_Value) = 7
当Calculated_Var_Value = 7.0000000000
.
非常感谢!
procedure TForm2.FormCreate(Sender: TObject);
var
A, B, C: Extended;
Val: Extended;
begin
ShowMessage(FloatToStr((1.8 - 2.5) / -0.1));
ShowMessage(FloatToStrF((1.8 - 2.5) / -0.1, ffFixed, 20, 20));
ShowMessage(FloatToStr(Ceil((1.8 - 2.5) / -0.1)));
Val := (1.8 - 2.5) / -0.1;
ShowMessage(FloatToStr(Val));
ShowMessage(FloatToStrF(Val, ffFixed, 20, 20));
ShowMessage(FloatToStr(Ceil(Val)));
Val := (1.8 - 2.5) / -0.1;
ShowMessage(FloatToStr(Val * 100 / 100));
ShowMessage(FloatToStrF(Val * 100 / 100, ffFixed, 20, 20));
ShowMessage(FloatToStr(Ceil(Val * 100 / 100)));
A := 1.8; B := 2.5; C := -0.1;
Val := (A - B) / C;
ShowMessage(FloatToStr(Val));
ShowMessage(FloatToStrF(Val, ffFixed, 20, 20));
ShowMessage(FloatToStr(Ceil(Val)));
A := 1.8; B := 2.5; C := -0.1;
Val := (A - B) / C;
ShowMessage(FloatToStr(Val * 100 / 100));
ShowMessage(FloatToStrF(Val * 100 / 100, ffFixed, 20, 20));
ShowMessage(FloatToStr(Ceil(Val * 100 / 100)));
end;