已知求正弦sin(x)的近似值的多项式公式为:
sin(x)=x−x33!+x55!−x77!+⋯+(−1)nx2n+1(2n+1)!+…
要求输入x和e,按上述公式计算sin(x)的近似值,要求计算的误差小于给定的eps。
**输入格式要求:"%lf%lf" 提示信息:"Enter x & eps:"
**输出格式要求:
"sin(%f)=%f\n" (输出调用标准库函数计算的sin(x)值)
"%d,sin(%f)=%f\n"(输出n的值,以及利用上述近似公式计算的sin(x)值)
程序运行示例如下:
Enter x & eps:5 0.000001
sin(5.000000)=-0.958924
12,sin(5.000000)=-0.958924
#include<stdio.h>
#include<math.h>
int main()
{
int i=1;
double x,eps,result=0,a=1,b,c=1,s,old;
printf("Enter x & eps:");
scanf("%lf%lf",&x,&eps);
b=x;
s=sin(x);
do
{
old = result;
result=result+(a*b)/c;
a=a*(-1);
i=i+2;
b=b*x*x;
c=c*(i-1)*i;
}
while(fabs(old-result)>eps);
printf("sin(%f)=%f\n",x,s);
printf("%d,sin(%f)=%f\n",(i/2),x,result);
return 0;
}