計(jì)算反正切函數(shù)(使用歐拉變換公式,精度很高),反正切函數(shù)的級數(shù)展開公式:
十載的鎮(zhèn)康網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營銷型網(wǎng)站的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整鎮(zhèn)康建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)建站從事“鎮(zhèn)康網(wǎng)站設(shè)計(jì)”,“鎮(zhèn)康網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
f(x) = x - x^3/3 + x^5/5 +...+ (-1)^k * x^(2k+1)/(2k + 1)+...
當(dāng)|x| 1時(shí),級數(shù)絕對值發(fā)散,無法直接使用歐拉公式計(jì)算。因此可以通過下面的公式
進(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(無窮大)
//
// 歐拉公式
//
// 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];
}
}
}
級數(shù)計(jì)算就不用我給代碼了吧。
#include?"math.h"
double?fn[1000]?=?{1};
double?f(int?n)?{
int?i;
if?(fn[n])?return?fn[n];
for?(i?=?1;?i?=?n;?i++)?{
if?(fn[n-i])?{
int?t?=?n-i+1;
while?(t?=?n)?{
fn[t]?=?fn[t-1]*?t;
t++;
}
break;
}
}
return?fn[n];
}
double?C(double?x,?int?n)?{
int?t?=?2*n;
return?f(t)*pow(x,t+1)/(pow(2,?t)?*?f(n)?*?f(n)?*(t+1));
}
double?asin0(double?x)
{
double?res?=?0,?t;
int?i?=?0;
do?{
t?=?C(x,?i++);
res?+=?t;
}while?(t??1e-7);
return?res;
}
int?main()?{
printf("%f",?asin0(0.5));
return?0;
}
sacnf("%s",a);這個(gè)語句根本沒的用。就算輸入到a,也只會被當(dāng)成字符串來處理。
printf("%f",j);這個(gè)語句不知道是不是你寫錯(cuò)了,j前面沒逗號。
你想想反余切的公式就可以編程 出來了,這個(gè)東西最好要自己實(shí)踐,別人幫你只是指導(dǎo)你,對你編程沒有實(shí)際的好處。
反3角函數(shù)有 acos(double),asin(double),atan(double),atan(double,double),返回值 double 型,弧度值。轉(zhuǎn)角度要 *180.0/3.1416。
例如:
1、#include stdio.h
2、#includestdlib.h
3、#includemath.h
4、int main()
5、{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;}
1、反三角函數(shù)是一種基本初等函數(shù)。
2、它是反正弦arcsin x,反余弦arccos x,反正切arctan x,反余切arccot x,反正割arcsec x,反余割arccsc x這些函數(shù)的統(tǒng)稱,各自表示其反正弦、反余弦、反正切、反余切 ,反正割,反余割為x的角。
3、它并不能狹義的理解為三角函數(shù)的反函數(shù),是個(gè)多值函數(shù)。
4、三角函數(shù)的反函數(shù)不是單值函數(shù),因?yàn)樗⒉粷M足一個(gè)自變量對應(yīng)一個(gè)函數(shù)值的要求,其圖像與其原函數(shù)關(guān)于函數(shù) y=x 對稱。歐拉提出反三角函數(shù)的概念,并且首先使用了“arc+函數(shù)名”的形式表示反三角函數(shù)。
C語言中之?dāng)?shù)學(xué)函數(shù)
C語言提供了以下的數(shù)學(xué)函數(shù),要使用這些函數(shù)時(shí),在程序文件頭必須加入:
#include
math.h
編譯時(shí),必須加上參數(shù)「-lm」(表示連結(jié)至數(shù)學(xué)函式庫),例如「gcc
-lm
test.c」。
函數(shù)之自變量與傳回之值型別見自變量或函數(shù)前之型別宣告。
函數(shù)已經(jīng)在「math.h」或其它標(biāo)頭檔宣告過了,因此在使用時(shí)不必再加型別宣告,例如「y=sin(x);」,不用寫成「y=double
sin(double
x);」。
函數(shù)說明
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
的自然對數(shù)
ln(x),x
double
log10(double
x)
x
底數(shù)為
10
的對數(shù),log10x,x
double
pow(double
x,
double
y)
x
的
y
次方
xy
double
sqrt(double
x)
x
的根號值
√x
double
ceil(double
x)
不小于
x
的最小整數(shù)(但其型別為
double)
double
floor(double
x)
不大于
x
的最大整數(shù)(但其型別為
double)
int
abs(int
x)
整數(shù)
x
的絕對值
|x|
long
labs(long
x)
長整數(shù)
x
的絕對值
|x|
double
fabs(double
x)
實(shí)數(shù)
x
的絕對值
|x|
當(dāng)前題目:c語言arcsin函數(shù) c語言arcsin函數(shù)怎么用
文章網(wǎng)址:http://www.muchs.cn/article36/doocppg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、定制開發(fā)、用戶體驗(yàn)、Google、網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)