c語(yǔ)言反tan函數(shù) c語(yǔ)言反正弦函數(shù)

C語(yǔ)言中反三角函數(shù)的調(diào)用

包含頭文件 math.h

我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、冷水江ssl等。為1000+企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的冷水江網(wǎng)站制作公司

反3角函數(shù)有 acos(double),asin(double),atan(double),atan(double,double),

返回值 double 型,弧度值。轉(zhuǎn)角度要 *180.0/3.1416

例如:

#include stdio.h

#includestdlib.h

#includemath.h

int main()

{

double x=0.5;

printf("acos=%.2lf degrees\n",acos(x) * 180.0/3.1416);

printf("asin=%.2lf degrees\n",asin(x) * 180.0/3.1416);

printf("atan=%.2lf degrees\n",atan(x) * 180.0/3.1416);

printf("atan2=%.2lf degrees\n",atan2(1.0,2.0) * 180.0/3.1416);

return 0;

}

c語(yǔ)言反正切

C語(yǔ)言中之?dāng)?shù)學(xué)函數(shù)

C語(yǔ)言提供了以下的數(shù)學(xué)函數(shù),要使用這些函數(shù)時(shí),在程序文件頭必須加入:

#include math.h

編譯時(shí),必須加上參數(shù)「-lm」(表示連結(jié)至數(shù)學(xué)函式庫(kù)),例如「gcc -lm test.c」。

函數(shù)之自變量與傳回之值型別見(jiàn)自變量或函數(shù)前之型別宣告。

函數(shù)已經(jīng)在「math.h」或其它標(biāo)頭檔宣告過(guò)了,因此在使用時(shí)不必再加型別宣告,例如「y=sin(x);」,不用寫成「y=double sin(double x);」。

函數(shù)說(shuō)明

double sin(double x)

x 的正弦函數(shù)值

double cos(double x)

x 的余弦函數(shù)值

double tan(double x)

x 的正切函數(shù)值

double asin(double x)

x 的反正弦函數(shù)值 sin-1x,x的值在 [-1,1] 之間,傳回的值在 [-p/2,p/2] 之間

double acos(double x)

x 的反余弦函數(shù)值cos-1x,x的值在 [-1,1] 之間,傳回的值在 [-p/2,p/2] 之間

double atan(double x)

x 的反正切函數(shù)值tan-1x,傳回的值在 [-p/2,p/2] 之間

double atan2(double y, double x)

y/x 的反正切函數(shù)值tan-1(y/x),傳回的值在 [-p, p] 之間

double sinh(double x)

x 的雙曲正弦函數(shù)值

double cosh(double x)

x 的雙曲余弦函數(shù)值

double tanh(double x)

x 的雙曲正切函數(shù)值

double exp(double x)

x 的指數(shù)函數(shù) ex

double log(double x)

x 的自然對(duì)數(shù) ln(x),x 0

double log10(double x)

x 底數(shù)為 10 的對(duì)數(shù),log10x,x 0

double pow(double x, double y)

x 的 y 次方 xy

double sqrt(double x)

x 的根號(hào)值 √x

double ceil(double x)

不小于 x 的最小整數(shù)(但其型別為 double)

double floor(double x)

不大于 x 的最大整數(shù)(但其型別為 double)

int abs(int x)

整數(shù) x 的絕對(duì)值 |x|

long labs(long x)

長(zhǎng)整數(shù) x 的絕對(duì)值 |x|

double fabs(double x)

實(shí)數(shù) x 的絕對(duì)值 |x|

怎樣用C語(yǔ)言表示反正弦,反余弦,反正切函數(shù)呢?

計(jì)算反正切函數(shù)(使用歐拉變換公式,精度很高),反正切函數(shù)的級(jí)數(shù)展開(kāi)公式:

f(x) = x - x^3/3 + x^5/5 +...+ (-1)^k * x^(2k+1)/(2k + 1)+...

當(dāng)|x| 1時(shí),級(jí)數(shù)絕對(duì)值發(fā)散,無(wú)法直接使用歐拉公式計(jì)算。因此可以通過(guò)下面的公式

進(jìn)行等價(jià)轉(zhuǎn)換之后再進(jìn)行計(jì)算。

等價(jià)轉(zhuǎn)換公式:

a) ATan(1/x) = Pi/2 - ATan(x)

b) ATan(-x) = - ATan(x)

特殊情況

0 = ArcTan(0)

Pi/2 = ArcTan(無(wú)窮大)

//

// 歐拉公式

//

// sum是和,term是通項(xiàng)值,jterm初始為1,以后按1遞增。wrksp是工作單元,視jterm的

// 最大值而定。

//

void eulsum(int nterm,double *sum,double term,int jterm,double wrksp[])

{

double tmp,dum;

if(jterm == 1)

{

nterm = 1;

wrksp[1] = term;

*sum = 0.5 * term;

}

else

{

tmp = wrksp[1];

wrksp[1] = term;

for(int j=1; j = nterm; j++)

{

dum = wrksp[j+1];

wrksp[j+1] = 0.5 * (wrksp[j] + tmp);

tmp = dum;

}

if(fabs(wrksp[nterm + 1]) = fabs(wrksp[nterm]))

{

*sum = *sum + 0.5 * wrksp[nterm + 1];

nterm = nterm + 1;

}

else

{

*sum = *sum + wrksp[nterm + 1];

}

}

}

級(jí)數(shù)計(jì)算就不用我給代碼了吧。

網(wǎng)站欄目:c語(yǔ)言反tan函數(shù) c語(yǔ)言反正弦函數(shù)
URL網(wǎng)址:http://bm7419.com/article8/dohppip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、商城網(wǎng)站、響應(yīng)式網(wǎng)站網(wǎng)站排名、企業(yè)網(wǎng)站制作、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

綿陽(yáng)服務(wù)器托管