分析:
泰勒公式的规律也比较明显,思路比较简单,有三个突破点:
1. x的几次方?这个通过观察从1开始每次加2就行
2. 分母是几的阶乘?很明显和x的次方数一样
3. 是正还是负? 即是-1的 i 次方
代码如下:
#include <stdio.h>
#include <math.h>
int main(){
int i=0,j=1;
double x;
double a,result=0.0,b;
scanf("%lf",&x);
while(fabs(result-sin(x))>=10e-6){
b=1;
for(int k=1;k<=j;k++){
b=b*k;
}
a=pow(-1,i)*pow(x,j)/b;
result=result+a;
i++;
j=j+2;
}
printf("%lf\n",result);
printf("%lf",sin(x));
return 0;
}
运行结果: