#include<stdio.h>
#include <math.h>
//先定义一个阶乘函数
double fac(double n){
double f=0;
if(n == 1 || n==0)
f =1;
else
f = fac(n-1)*n;
return f;
}
//一个指数函数(次方)
double kvat(double n,double ci){
double chengf=1;
for (int i=1; i<=ci; i++) {
chengf = chengf*n;
}
return chengf;
}
double sinus(double x){
int z =-1;
int j =1;
double sin=x;
for (j =3;fabs( kvat(x,j)/fac(j) )>0.001 ; j+=2) {
// printf("%lf\n",kvat(x, j));
sin =sin + z*(kvat(x,j)/fac(j));
z = -z;
}
return sin;
}
int main(){
double jd,hudu;
scanf("%lf",&jd);
hudu = (jd*M_PI)/180;//这里的M_PI在math库里就是 圆周率pai
printf( "%.3lf",sinus(hudu));
return 0;
}
C语言-利用泰勒公式计算sinx的值 (不调用库函数,自己定义函数)
最新推荐文章于 2023-09-25 13:49:49 发布