版权声明:转载请附上原文链接哟! https://blog.csdn.net/weixin_44170305/article/details/90173843
题目描述
泰勒公式是一个用函数在某点的信息描述其附近取值的公式。如果函数足够光滑的话,在已知函数在某一点的各阶导数值的情况之下,泰勒公式可以用这些导数值做系数构建一个多项式来近似函数在这一点的邻域中的值。函数的麦克劳林展开是泰勒公式的特殊形式,即泰勒公式中“某一点”取0的情况。下面是ex的麦克劳林展开式,据此求出多组ex的值。
精度要求:最后一项大于1e-7
输入
输入一个整数N,代表输入数据的组数,后随N行,每行一个小数,分别代表一个x
输出
输出N行,分别代表各行x对应的ex的值。输出精确到小数点后第7位。
扫描二维码关注公众号,回复:
6242333 查看本文章
样例输入
copy
<span style="color:#333333">5
0
1
1.5
0.3
2.4</span>
样例输出
<span style="color:#333333">1.0000000
2.7182818
4.4816890
1.3498588
11.0231763</span>
提示
在C++中,cout<<setiosflags(ios::fixed)<<setprecision(7)<<y<<endl;输出的y值保留7位小数。
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<map>
#include<algorithm>
#include<iomanip>
#include<queue>
#include<set>
#include<stack>
using namespace std;
int main()
{
int i,q,n;
double x,f,t;
cin>>n;
for(i=0; i<n; i++)
{
cin>>x;
f=1;
t=x;
q=1;
while(t>1e-7)
{
f+=t;
q++;
t=t*x/q;
}
printf("%.7lf\n",f);
}
return 0;
}