zl程序教程

您现在的位置是:首页 >  其它

当前栏目

小技巧—判断浮点数相等

技巧 判断 相等 浮点数
2023-09-11 14:20:16 时间

小技巧—判断浮点数相等

实数域二分的判停条件是:l-r<=eps

eps是预定精度。

这里的话,很多同学(包括本蒟蒻)就会自然而然地认为这个就是判浮点数是否相等的。

实则不是。

由于浮点数的精度误差,这样的判断方法不是很科学,显得非常简单。

那么复杂科学的判断方式是什么呢?

是这样:

\[\frac{|a-b|}{\max(|a|,|b|)}\le eps \]

除变乘

就成了这样:

#include<cmath>
#include<algorithm>
//Attention
abs(a-b)<=eps*max(abs(a),abs(b));

差不多是这样。