【发布时间】:2016-05-25 10:52:30
【问题描述】:
我正在用 c++ 编写一个程序,我想在其中找到我的电脑的 epsilon。 我希望结果是双精度(即 2.2204460492503131 E-16),但输出是 1.0842 E-019,它是长双精度的 epsilon。
我的程序是这样的:
#include <iostream>
double e = 1.0;
double x;
int main ()
{
for (int i = 0; e + 1.0!=1.0 ; i++)
{
std::cout<<e<<'\n';
x = e;
e/=2.0;
}
std::cout << "The epsilon of this Computer is "<< x <<'\n';
return 0;
}
【问题讨论】:
标签: double long-double