已知函数e x 可以展开为幂级数1+x+x 2 /2!+x 3 /3!+⋯+x k /k!+⋯。现给定一个实数x,要求利用此幂级数部分和求e x 的近似值,求和一直继续到最后一项的绝对值小于0.00001。 输入格式: 输入在一行中给出一
时间: 2024-06-13 07:05:21 浏览: 188
根据提供的引用内容,已知函数e^x可以展开为幂级数1+x+x^2/2!+x^3/3!+⋯+x^k/k!+⋯。现给定一个实数x,要求利用此幂级数部分和求e^x的近似值,求和一直继续到最后一项的绝对值小于0.00001。
代码实现如下(C语言):
```c
#include <stdio.h>
#include <math.h>
double JC(int i);//阶乘
double MC(double x,int i);//幂次
int main() {
double sum=0;
int n=0;
double x;
scanf("%lf",&x);
double a;
do {
a=MC(x,n)/JC(n);
sum=sum+a;
n=n+1;
}while(a>=0.00001);
printf("%.4f",sum);
return 0;
}
double MC(double x,int i) {
double mc=1;
while(i) {
i=i-1;
mc=mc*x;
}
return mc;
}
double JC(int i) {
double jc=1;
if(i==0)
jc=1;
else {
int k;
for(k=1;k<=i;k++)
jc=jc*k;
}
return jc;
}
```
阅读全文