相关疑难解决方法(0)

如何计算两个浮点数的平均值?

在浮点运算中计算两个数字的平均值的最准确方法是什么?让我们考虑一下最常见的双精度 64 位数字。

  1. (a + b) / 2

  2. a / 2 + b / 2

  3. a + (b - a) / 2

这些计算平均值的方法可能会给出不同的结果,如下面的 C++ 代码所示:

double a = 1.2;
double b = 3.6;
double mean1 = (a + b) / 2.0;
double mean2 = a / 2.0 + b / 2.0;
double mean3 = a + (b - a) / 2.0;
cout << fixed << setprecision(20);
cout << "mean1: " << mean1 << endl;
cout << "mean2: " << mean2 …
Run Code Online (Sandbox Code Playgroud)

language-agnostic floating-point ieee-754

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