float类型比较(50分)

  • 主题发起人 主题发起人 gutian
  • 开始时间 开始时间
G

gutian

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一字段为float,值为12.2244
如果取两个数字6.1122,他们的和与综合比较是false
该如何处理
 
放大转成整形后比较。
 
float在内存中是很少是相等的,所以比较要通过监测两个数值的误差来确定

const
delta = 0.0001;
var
f1,f2: double;
begin
f1 := 12.2244;
f2 := 6.1122;
if Abs(f2 + f2 - f1) < delta then .... 认为相等
end;
 
看来只有使用误差的方法了!!!!
谢谢
不知哪位还有更好的方法
 
后退
顶部