c语言编程 cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10!
具体题目如下:输入x,按下列公式计算cos(x)的近似值。cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10!...
具体题目如下: 输入x,按下列公式计算cos(x)的近似值。
cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10! 展开
cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10! 展开
7个回答
展开全部
# include <stdio.h>
void main()
{
int i,j,m=1,t=1;
double x, n, sum=1;
printf("请输入x:\n");
scanf("%f",&x);
for(i=2;i<11;i++)
{
for(j=2,n=x;j<=i;j++)
{
m=m*j;
n=n*x;
}
t=-t;
sum+=t*n/m;
}
printf("cos(%f)=%f\n",x,sum);
}
void main()
{
int i,j,m=1,t=1;
double x, n, sum=1;
printf("请输入x:\n");
scanf("%f",&x);
for(i=2;i<11;i++)
{
for(j=2,n=x;j<=i;j++)
{
m=m*j;
n=n*x;
}
t=-t;
sum+=t*n/m;
}
printf("cos(%f)=%f\n",x,sum);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看一下吧 这样写OK吧
double cos(double x)
{
double a;
double b = 1;
double sum = 1 ;
for (int i = 2 ; i <= 10 ; i++)
{
a = 1 ;
for (int j = 1 ; j <= i ; j++)
{
b = b * x ; // 求次方
a = a * j ; // 求阶乘
}
if (i % 2 == 0)
{
sum += (-( b / a));
}
else
{
sum += (b / a);
}
}
return sum;
}
double cos(double x)
{
double a;
double b = 1;
double sum = 1 ;
for (int i = 2 ; i <= 10 ; i++)
{
a = 1 ;
for (int j = 1 ; j <= i ; j++)
{
b = b * x ; // 求次方
a = a * j ; // 求阶乘
}
if (i % 2 == 0)
{
sum += (-( b / a));
}
else
{
sum += (b / a);
}
}
return sum;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询