0
我想用taylor系列来计算Sin(x)的值,即:x-x^3/3!+ x^5/5! 我试过的是这段代码,但它给我错误!C正弦(x)的错误近似
int n;
int factorial;
float sum=0;
float angle;
int sign=1;
int i,j;
printf("Please Enter angle in degrees:\n");
scanf("%f",&angle);
angle=angle*3.14/180;
printf("Please Enter Number of terms:\n");
scanf("%d",&n);
for (i=1;i<=n;i++){
factorial=1;
for (j=1;j<=(2*i-1);j++)
factorial=factorial*j;
sum=sum+sign*(pow(angle,j)/factorial);
sign*=-1;
}
printf("Sum up to %d terms is %f",n,sum);
一次偶然的机会,你使用Python? – chux
你真的应该在浮点处理所有这些,最好是双精度。特别是,您将整型参数传递给期望为double的函数,并依靠编译器根据函数声明中的信息为您输入参数。使数据类型更加清晰明确。 –