如何在C語言中解決正弦或余弦函數(shù)的表示方法我是一個?頭文件包含。math.h
專注于為中小企業(yè)提供成都網(wǎng)站制作、成都網(wǎng)站建設(shè)服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)成華免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
cos :余弦函數(shù)
函數(shù)原型:double cos(double x);
頭文件:#includemath.h
是否是標(biāo)準(zhǔn)函數(shù):是
函數(shù)功能:求x的余弦值,這里,x為弧度。
返回值:計算結(jié)果的雙精度值。
例程如下: 求cosx。
#include stdio.h
#include math.h
int main(void)
{
double result;
double x = M_PI。
cosx函數(shù)
#includestdio.h
#includemath.h
int main()
{
int n=0;
double x,sum=0;
printf("please enter x:");
scanf("%lf",x);//
double cosx(double x,int n);
do
{
sum=sum+cosx(x,n);
n=n+1;
}
while(fabs(cosx(x,n))1e-8);
printf("%9.8f\n",sum);
return 0;
}
double cosx(double x,int n)
{
double p,q;//
p=pow(x,2*n);
double fact(int n);//
q=fact(2*n);
if(n%2)
return(-p/q);
else
return(p/q);
}
double fact(int n)//
{
double ans=1; int i;
if(n=1)
return 1;
for(i=1;i=n; ++i)
ans*=i;
return ans;
}
cosx函數(shù)即反余弦函數(shù)
函數(shù)y=cosx(x∈[0,π])的反函數(shù)叫做反余弦函數(shù),
記作y=arccosx(x∈[-1,1]).
#includestdio.h
#define
pi
3.14159265
//pi定義
double
mypow(double,int);
//自定義指數(shù)函數(shù)
int
mult(int);
//階乘函數(shù)
double
mysin(double);
//sin函數(shù)
double
mycos(double);
//cos函數(shù)
double
mypow(double
x,int
n)
{
int
i;
double
result=1;
if(n0)
for(i=1;i=n;i++)
result*=x;
return
result;
}
int
mult(int
n)
{
int
i;
int
result=1;
if(n0)
for(i=1;i=n;i++)
result*=i;
return
result;
}
double
mysin(double
x)
{
int
flag=1;//標(biāo)志正負(fù)
int
i;
double
result=0;
while(x=2*pi)
x-=2*pi;
while(x0)
x+=2*pi;
if(xpi)
{
x=2*pi-x;
flag=-flag;
}
if(xpi/2)
//將任意弧度轉(zhuǎn)化到[0,pi/2]
x=pi-x;
if(xpi/4)
//[pi/4,pi/2]調(diào)用cosX在[0,pi/4]求解,減少誤差
return
flag*mycos(pi/2-x);
for(i=0;i10;i++)//taylor展開
{
result+=((double)1)*mypow(x,2*i+1)*mypow(-1,i)/mult(2*i+1);
}
return
flag*result;
}
double
mycos(double
x)//與sin函數(shù)過程類似
{
int
flag=1;
int
i;
double
result=0;
while(x=2*pi)
x-=2*pi;
while(x0)
x+=2*pi;
if(x1.5*pi)
x=2*pi-x;
if(xpi/2
x=pi)
{
x=pi-x;
flag=-flag;
}
if(xpi
x=1.5*pi)
{
x-=pi;
flag=-flag;
}
if(xpi/4)
return
flag*mysin(pi/2-x);
for(i=0;i10;i++)
{
result+=((double)1)*mypow(x,2*i)*mypow(-1,i)/mult(2*i);
}
return
flag*result;
}
int
main()//測試程序
{
int
x;
while(1)
{
scanf("%d",x);//可以輸入任意一個角度(角度制),-1終止程序
printf("cosx=%lf\n",mycos(x*pi/180));//轉(zhuǎn)換成弧度,再調(diào)用前面的函數(shù)。
printf("sinx=%lf\n",mysin(x*pi/180));
if(x==-1)
break;
}
return
0;
}
標(biāo)題名稱:余弦函數(shù)用c語言怎么寫 c++中余弦函數(shù)怎么表示
本文網(wǎng)址:http://jinyejixie.com/article18/dophegp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、云服務(wù)器、、微信公眾號、動態(tài)網(wǎng)站、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)