输入一个小于1的数,求sinx的近似值,要求误差小于0.0001。近似计算公式为 :
.....
分析:若取前n项的累加和作为isin(x)的近似值,则第n+1项(不加正负号)的值就是误差限。
#include<stdio.h>
int main(){
double x;
while(~scanf("%lf",&x))
{
double item,sin;
int sign =-1,n=2;
item=x*x*x/6;
sin=x;
while(item>1e-4)
{
sin+=item*sign;
item=item*x*x/((2*n)*(2*n+1));
sign=-sign;
n++;
}
printf("%lf\n",sin);
}
return 0;
}