Double型数据的输出问题,请大家指点小弟一下。
题目很简单:计算输入X的级数:1+X-X^2/2!+X^3/3!-……(-1)^(n+1)X^n/n! 注:X^n为X的n次幂!将所有不小于绝对值10^-8的数都计入在内,输出精度为10^-8。下面的代码是我写的,应该没有问题了,可是输出地时候sum的值出现问题了。我截图给大家看哈,编译器VC6!
程序代码:#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x,Item=1,sum=0;
double nume=1,deno=1;
int sign=1,i=1;
cout<<"Please enter the number:\n";
cin>>x;
while (fabs(Item)>=1e-8)
{
sum+=Item;
nume*=x;
deno*=i++;
Item=sign*nume/deno;
sign*=-1;
}
cout.precision(8);
cout<<"The result of "<<x<<" is "<<sum<<endl;
return 0;
}
后面Double型的sum输出就变为-1.#IND了,大家指教一下这是怎么回事儿?




感觉nume咋没自加呢
