相关疑难解决方法(0)

将浮点数与零进行比较

C++ FAQ lite "[29.17]为什么我的浮点比较不起作用?" 建议这个相等测试:

#include <cmath>  /* for std::abs(double) */

inline bool isEqual(double x, double y)
{
  const double epsilon = /* some small number such as 1e-5 */;
  return std::abs(x - y) <= epsilon * std::abs(x);
  // see Knuth section 4.2.2 pages 217-218
}
Run Code Online (Sandbox Code Playgroud)
  1. 这是否正确,这意味着唯一等于零的数字是+0-0
  2. 当测试零或者测试时,是否应该使用此功能|x| < epsilon

更新

正如Daniel Daranas所指出的那样,最好调用函数isNearlyEqual(我关心的是这种情况).

有人指出了这个链接,我想更加突出地分享.

c++ floating-point

52
推荐指数
5
解决办法
8万
查看次数

比较两个浮点数,看它们是否为负数,或两者都是正数

干草伙计,我有2个花车,都来自输入盒.

我需要比较这两个浮点数,如果一个是负数,一个是正数则抛出一个错误.如果他们既是积极的,也可能都是消极的,那很好.

有任何想法吗?

谢谢

javascript floating-point compare

2
推荐指数
2
解决办法
2127
查看次数

标签 统计

floating-point ×2

c++ ×1

compare ×1

javascript ×1