Ⅰ 在c語言中,atan2((Y1-Y2),(X1-X2))是什麼意思
atan2應該是一個函數,把你上下文貼出來才能更好的給你解釋
(Y1-Y2)是它的第一個參數,(X1-X2)是第二個參數
網路裡面有
http://ke..com/view/653928.htm
Ⅱ 用C語言表示反正弦,反餘弦,反正切函數
計算反正切函數(使用歐拉變換公式,精度很高),反正切函數的級數展開公式:
f(x) = x - x^3/3 + x^5/5 +...+ (-1)^k * x^(2k+1)/(2k + 1)+...
當|x| > 1時,級數絕對值發散,無法直接使用歐拉公式計算。因此可以通過下面的公式
進行等價轉換之後再進行計算。
等價轉換公式:
a) ATan(1/x) = Pi/2 - ATan(x)
b) ATan(-x) = - ATan(x)
特殊情況
0 = ArcTan(0)
Pi/2 = ArcTan(無窮大)
//
// 歐拉公式
//
// sum是和,term是通項值,jterm初始為1,以後按1遞增。wrksp是工作單元,視jterm的
// 最大值而定。
//
void eulsum(int& nterm,double *sum,double term,int jterm,double wrksp[])
{
double tmp,m;
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++)
{
m = wrksp[j+1];
wrksp[j+1] = 0.5 * (wrksp[j] + tmp);
tmp = m;
}
if(fabs(wrksp[nterm + 1]) <= fabs(wrksp[nterm]))
{
*sum = *sum + 0.5 * wrksp[nterm + 1];
nterm = nterm + 1;
}
else
{
*sum = *sum + wrksp[nterm + 1];
}
}
}
級數計算就不用我給代碼了吧。
Ⅲ C語言atan
math.hcos,sin,tan,cosh,sinh,tanh:餘弦、正弦、正切、雙曲餘弦、雙曲正弦、雙曲正切函數,參數x為弧度。有對應的f和l版本(C99中增加)。acos,asin,atan,atan2,acosh,asinh,atanh:反三角函數,有對應的f和l版本,除acos,asin,atan,atan2外都是C99中增加的。
Ⅳ 請問反正切函數arctanx用c語言怎麼表示
double atan(double x)
x 的反正切函數值tan-1x,傳回的值在 [-pi/2,pi/2] 之間
double atan2(double y, double x)
y/x 的反正切函數值tan-1(y/x),傳回的值在 [-pi, pi] 之間
arctanX的導數是1/(1+X²)這里的X=x/2復合函數求導,需要先求子函數的導數,即X'=1/2再乘上arctanX的導數所以所求導數是1/[2(1+x²/4)]
C語言中之數學函數
C語言提供了以下的數學函數,要使用這些函數時,在程序文件頭必須加入:
#include
編譯時,必須加上參數「-lm」(表示連結至數學函式庫),例如「gcc -lm test.c」。
函數之自變數與傳回之值型別見自變數或函數前之型別宣告。
函數已經在「math.h」或其它標頭檔宣告過了,因此在使用時不必再加型別宣告,例如「y=sin(x);」,不用寫成「y=double sin(double x);」。
函數說明
double sin(double x)
x 的正弦函數值
double cos(double x)
x 的餘弦函數值
double tan(double x)
x 的正切函數值
double asin(double x)
x 的反正弦函數值 sin-1x,x的值在 [-1,1] 之間,傳回的值在 [-p/2,p/2] 之間
double acos(double x)
x 的反餘弦函數值cos-1x,x的值在 [-1,1] 之間,傳回的值在 [-p/2,p/2] 之間
double atan(double x)
x 的反正切函數值tan-1x,傳回的值在 [-p/2,p/2] 之間
double atan2(double y, double x)
y/x 的反正切函數值tan-1(y/x),傳回的值在 [-p, p]
Ⅳ c語言中atan是什麼意思
函數名: atan
功 能: 反正切函數(C++)
用 法: double atan(double x);
輸 入: -∞~+∞
(註:受限於形式參數的范圍,實際輸入范圍為double型的范圍,即負值取值范圍為 -1.7976E+308 到 -4.94065645841246544E-324,正值取值范圍為 4.94065645841246544E-324 到 1.797693E+308)
輸 出: -pi/2~pi/2
輸入為負值,輸出就是 負值。。
Ⅵ C語言中atan函數算出來結果怎麼不對啊
反三角函數返回的都是弧度,而不是角度。
Ⅶ C語言中反三角函數怎樣調用
反3角函數有 acos(double),asin(double),atan(double),atan(double,double),返回值 double 型,弧度值。轉角度要 *180.0/3.1416。
例如:
1、#include <stdio.h>
2、#include<stdlib.h>
3、#include<math.h>
4、int main()
5、{double x=0.5;
printf("acos=%.2lf degrees ",acos(x) * 180.0/3.1416);
printf("asin=%.2lf degrees ",asin(x) * 180.0/3.1416);
printf("atan=%.2lf degrees ",atan(x) * 180.0/3.1416);
printf("atan2=%.2lf degrees ",atan2(1.0,2.0) * 180.0/3.1416);
return 0;}
Ⅷ c語言中的反函數怎麼計算
例如要使用cos的反函數arccos,C語言里有acos()函數,在頭文件math.h里。
1、C語言中,數學函數是函數的一種。指專門進行數學運算的函數,一般都在<math.h>頭文件下。如果該標准庫內存在某個函數的反函數,直接調用該反函數即可計算。
2、數學函數列表:
1)int abs(int i); 求整數的絕對值。
2)long labs(long n); 求長整型數的絕對值。
3)double fabs(double x); 求實數的絕對值。
4)double floor(double x); 求不大於x的最大整數,它相當於數學函數[x]。
(8)c語言atan2擴展閱讀:
語言組成:基本構成。
數據類型:C的數據類型包括:整型、字元型、實型或浮點型(單精度和雙精度)、枚舉類型、數組類型、結構體類型、共用體類型、指針類型和空類型。
常量與變數:常量其值不可改變,符號常量名通常用大寫。
變數是以某標識符為名字,其值可以改變的量。標識符是以字母或下劃線開頭的一串由字母、數字或下劃線構成的序列,請注意第一個字元必須為字母或下劃線,否則為不合法的變數名。變數在編譯時為其分配相應存儲單元。
數組:如果一個變數名後面跟著一個有數字的中括弧,這個聲明就是數組聲明。字元串也是一種數組。它們以ASCII的NULL作為數組的結束。要特別注意的是,中括弧內的索引值是從0算起的。
Ⅸ C語言asin()函數:求反正弦的值(以
C語言中之數學函數
C語言提供了以下的數學函數,要使用這些函數時,在程序文件頭必須加入:
#include
<math.h>
編譯時,必須加上參數「-lm」(表示連結至數學函式庫),例如「gcc
-lm
test.c」。
函數之自變數與傳回之值型別見自變數或函數前之型別宣告。
函數已經在「math.h」或其它標頭檔宣告過了,因此在使用時不必再加型別宣告,例如「y=sin(x);」,不用寫成「y=double
sin(double
x);」。
函數說明
double
sin(double
x)
x
的正弦函數值
double
cos(double
x)
x
的餘弦函數值
double
tan(double
x)
x
的正切函數值
double
asin(double
x)
x
的反正弦函數值
sin-1x,x的值在
[-1,1]
之間,傳回的值在
[-p/2,p/2]
之間
double
acos(double
x)
x
的反餘弦函數值cos-1x,x的值在
[-1,1]
之間,傳回的值在
[-p/2,p/2]
之間
double
atan(double
x)
x
的反正切函數值tan-1x,傳回的值在
[-p/2,p/2]
之間
double
atan2(double
y,
double
x)
y/x
的反正切函數值tan-1(y/x),傳回的值在
[-p,
p]
之間
double
sinh(double
x)
x
的雙曲正弦函數值
double
cosh(double
x)
x
的雙曲餘弦函數值
double
tanh(double
x)
x
的雙曲正切函數值
double
exp(double
x)
x
的指數函數
ex
double
log(double
x)
x
的自然對數
ln(x),x
>
0
double
log10(double
x)
x
底數為
10
的對數,log10x,x
>
0
double
pow(double
x,
double
y)
x
的
y
次方
xy
double
sqrt(double
x)
x
的根號值
√x
double
ceil(double
x)
不小於
x
的最小整數(但其型別為
double)
double
floor(double
x)
不大於
x
的最大整數(但其型別為
double)
int
abs(int
x)
整數
x
的絕對值
|x|
long
labs(long
x)
長整數
x
的絕對值
|x|
double
fabs(double
x)
實數
x
的絕對值
|x|
Ⅹ C語言atan()函數:求反正切的值(以
double atan(double x)
x 的反正切函數值tan-1x,傳回的值在 [-pi/2,pi/2] 之間
double atan2(double y, double x)
y/x 的反正切函數值tan-1(y/x),傳回的值在 [-pi, pi] 之間