1. 程式人生 > >習題4-2 求冪級數展開的部分和 (20 point(s)

習題4-2 求冪級數展開的部分和 (20 point(s)

習題4-2 求冪級數展開的部分和 (20 point(s))

已知函式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 main(){
  double x,sum=1,item=1,s=1;
  int k=1;
  scanf("%lf",&x);
  while(fabs(item)>0.00001){
  for(int i=1;i<=k;i++){
  s=s*i;
  }
  item=1.0*pow(x,k)/s;
  sum+=item;
  k++;
  s=1;
  
  }
  
  printf("%.4f",sum);
  
  
  return 0;
}