计算级数:1+x-x^2/2!+x^3/3!-......(-1)^n+1*x^n/n! ,要求输出精度为10^-8
//参考别人的code
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main()
{
double x,sum1=1.0,sum2=-1.0,sum=1.0;
double sum3=1.0,sum4=1.0;
cout <<"Please input x:\n";
cin>> x;
for(int n=1;abs(sum1)>1e-8;n++)
{
sum2*=-1.0;
sum3*=x;
sum4*=n; //sun4为什么是*=n呢!!!题目是分母是2然后逐渐加一啊,sum4+=n
//要是sum4*=n 那么分母运行第3次的就成了6 中间的x^3/3 x^4/4x^5/5就没计算到啊
sum1=sum2*sum3/sum4;
sum+=sum1;
}
cout <<"sum= " <<setprecision(9) <<sum1 <<endl;
return 0;
}
还有 这个1+x-x^2/2!+x^3/3!
分母后面加!是什么意思 !书上说是去反,那是不是说1+x-x^2/2-x^3/3!-x^4/4这样的意思呢?
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main()
{
double x,sum1=1.0,sum2=-1.0,sum=1.0;
double sum3=1.0,sum4=1.0;
cout <<"Please input x:\n";
cin>> x;
for(int n=1;abs(sum1)>1e-8;n++)
{
sum2*=-1.0;
sum3*=x;
sum4*=n; //sun4为什么是*=n呢!!!题目是分母是2然后逐渐加一啊,sum4+=n
//要是sum4*=n 那么分母运行第3次的就成了6 中间的x^3/3 x^4/4x^5/5就没计算到啊
sum1=sum2*sum3/sum4;
sum+=sum1;
}
cout <<"sum= " <<setprecision(9) <<sum1 <<endl;
return 0;
}
还有 这个1+x-x^2/2!+x^3/3!
分母后面加!是什么意思 !书上说是去反,那是不是说1+x-x^2/2-x^3/3!-x^4/4这样的意思呢?
...全文


新手乐园
