C语言计算sinx的近似值
发布网友
发布时间:2022-04-28 11:41
我来回答
共2个回答
热心网友
时间:2023-10-07 00:16
/*sinx=x-x^3/3!+x^5/5-x^7/7!...*/
#include<stdio.h>
#include<math.h>
#define ACCURARY 0.00000001
main()
{
int i=1,j=1,k,n=1,x;
printf("sinx=x-x^3/3!+x^5/5-x^7/7!...\n请输入一个x\n");
scanf("%d",&x);
double sinx=0;
for(i=1;fabs(t)>=ACCURARY;i+=2)
{
for(k=1;k<=i;k++)
{n=n*i;}
j++;
t=pow(-1,j)*pow(x,i)/n;
sinx=sinx+t;
}
printf("sin%d=%.8f\n",x,sinx);
}
你编译一下,看看行不,我好久没弄了。
热心网友
时间:2023-10-07 00:16
/*sinx=x-x^3/3!+x^5/5-x^7/7!...*/
#include<stdio.h>
#include<math.h>
#define ACCURARY 0.00000001
main()
{
int i=1,j=1,k,n=1,x;
printf("sinx=x-x^3/3!+x^5/5-x^7/7!...\n请输入一个x\n");
scanf("%d",&x);
double sinx=0;
for(i=1;fabs(t)>=ACCURARY;i+=2)
{
for(k=1;k<=i;k++)
{n=n*i;}
j++;
t=pow(-1,j)*pow(x,i)/n;
sinx=sinx+t;
}
printf("sin%d=%.8f\n",x,sinx);
}
你编译一下,看看行不,我好久没弄了。
热心网友
时间:2023-10-07 00:16
#include<stdio.h>
#include<math.h>
#define ACCURARY 0.00000001
int jiecheng(int x);
void main()
{
int i=1,j=1,x;
double sinx=0,sinx1=1;
printf("sinx=x-x^3/3!+x^5/5-x^7/7!...\n请输入一个x\n");
scanf("%d",&x);
for(i=1;fabs(sinx-sinx1)>=ACCURARY;i+=2)
{
j++;
sinx1=sinx;
sinx=sinx+pow(-1,j)*pow(x,i)/jiecheng(i);
}
printf("sin%d=%.8f\n",x,sinx);
//printf("%d",jiecheng(3));
}
int jiecheng(int x) {
if(x==1 || x==0)
return 1;
else
return jiecheng(x-1)*x;
}
追问我的哪里错了啊
热心网友
时间:2023-10-07 00:16
#include<stdio.h>
#include<math.h>
#define ACCURARY 0.00000001
int jiecheng(int x);
void main()
{
int i=1,j=1,x;
double sinx=0,sinx1=1;
printf("sinx=x-x^3/3!+x^5/5-x^7/7!...\n请输入一个x\n");
scanf("%d",&x);
for(i=1;fabs(sinx-sinx1)>=ACCURARY;i+=2)
{
j++;
sinx1=sinx;
sinx=sinx+pow(-1,j)*pow(x,i)/jiecheng(i);
}
printf("sin%d=%.8f\n",x,sinx);
//printf("%d",jiecheng(3));
}
int jiecheng(int x) {
if(x==1 || x==0)
return 1;
else
return jiecheng(x-1)*x;
}
追问我的哪里错了啊