procedure TForm1.Button1Click(Sender: TObject);
var
a,b,d: double;
begin
a:= 15.0794;
b := 227.38830436;
d:=a*a-b;
if d<>0.0 then
showmessage('不等')
else showmessage('等');
end;上述例子实际上 d=0,可是显示信息为‘不等’,而我需要的是正确的结果,怎么解决
var
a,b,d: double;
begin
a:= 15.0794;
b := 227.38830436;
d:=a*a-b;
if d<>0.0 then
showmessage('不等')
else showmessage('等');
end;上述例子实际上 d=0,可是显示信息为‘不等’,而我需要的是正确的结果,怎么解决
解决方案 »
- 请教下谁有VNC开发的DLL?
- 对于-FD:\Program Files\hi.exe这样的参数怎么FindCmdLineSwitch?改良FindCmdLineSwitch
- dbGridEh,获得了焦点,该行变蓝色,但实际上没有选中,如何让蓝色的行即为选中的行?
- 关于TStringgrid的问题
- 微软的一个Bug,没敢放到Windows专区,放咱们Delphi里让大家乐一下吧。
- 用Delphi,如何解除屏蔽的鼠标?
- 生日,在隔离中度过,散分1000……(二)
- ActiveXForm的版本更新问题,如何解决?
- 软件自动升级需要什么写呀?
- 请问谁有列车时刻表的最新数据库,能发送一份给我么?
- 有关chart控件的问题
- 如何防止ListView控件闪烁?
一般在做金融计算的时候,为了避免这种问题,用Currency类型,固定四位小数,是最简单的解决办法。你可以把Currency当浮点数来用。
圆的,也就是说计算中心点时 x0= a/b,b的值应该为0。
(xi,yi)在不在同一条直线上,b也可能很小, jieguo说的方法就不
适用了
if abs(d)>0.00000001 then
showmessage('不等')
else
showmessage('等');