level 1
zdaq213
楼主
原问题出处:http://bbs.chinaunix.net/thread-4059559-1-1.html
看到这个帖子提出的问题,不明白原因?
#include<iostream>
using namespace std;
int main(void)
{
double x = 0.1;
for(int i=0;i<1000000;i++){
x = 4.0*x*(1.0-x); }
cout <<"X= "<<x<<endl;
return 0;
}
在codeblocks 12.11(自带的编译器mingw) 及codeblocks 10.5(自带的编译器mingw) 中得到的结果都是
x = 0.496206
但是我在 VS2008 (Win 7 x64 环境)中用MSVC 编译 编译及用ICC 编译运行得到的结果 都是 :0.0461009
为什么???
2013年07月13日 12点07分
1
看到这个帖子提出的问题,不明白原因?
#include<iostream>
using namespace std;
int main(void)
{
double x = 0.1;
for(int i=0;i<1000000;i++){
x = 4.0*x*(1.0-x); }
cout <<"X= "<<x<<endl;
return 0;
}
在codeblocks 12.11(自带的编译器mingw) 及codeblocks 10.5(自带的编译器mingw) 中得到的结果都是
x = 0.496206
但是我在 VS2008 (Win 7 x64 环境)中用MSVC 编译 编译及用ICC 编译运行得到的结果 都是 :0.0461009
为什么???