已知函数e?x??可以展开为幂级数1+x+x?2??/2!+x?3??/3!+?+x?k??/k!+?。现给定一个实数x,要求利用此幂级数部分和求e?x??的近似值,求和一直继续到最后一项的绝对值小于0.00001。
输入在一行中给出一个实数x∈[0,5]。
在一行中输出满足条件的幂级数部分和,保留小数点后四位。
1.2
3.3201
#include <stdio.h> #include<math.h> int fact(int i); int main() { double x,sum=1; int i=1; double temp; scanf("%lf",&x); do{ temp=pow(x,i)/fact(i); i++; sum=sum+temp; }while(temp>=1e-5); printf("%.4f\n",sum); return 0; } int fact(int n) { int fact=1; for(int i=1;i<=n;i++) { fact=fact*i; } return fact; }
原文:https://www.cnblogs.com/2228212230qq/p/9291818.html