1樓:風℃幻想
計算反正切函式(使用尤拉變換公式,精度很高),反正切函式的級數公式:
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)
else
if(fabs(wrksp[nterm + 1]) <= fabs(wrksp[nterm]))
else
}}級數計算就不用我給**了吧。
2樓:匿名使用者
學了這麼久數學。重來沒碰到過要求反正割函式的。因該能間接利用正弦或餘弦吧!!????
3樓:星月小木木
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] 之間
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語言取隨機數,怎樣用c語言取一個隨機數
誰把誓言換流年 例如 include int i i rand 10 就是取0到10 不包括10 之間的隨機數 管罡 hutuchong580 具體 如下 include include include 用到了time函式 int main return 0 有以下幾種情況 1 如果只要產生隨機數而...
怎樣用簡單C語言將A轉化成a,C語言 如何把A Z轉換成1 26?輸入一個字母 輸出一個數字。
蹦迪小王子啊 最簡單的方法就是 char c a 32 void main char c a 32 printf c c c getch 擴充套件資料算術運算子 用於各類數值運算。包括加 減 乘 除 求餘 或稱模運算,自增 自減 共七種。關係運算子 用於比較運算。包括大於 小於 等於 大於等於 小於...
C語言做個三角形,怎樣用C語言寫一個用 組成的三角形
void main 第二層for迴圈錯誤!變換就在這裡!自己先想下,不知道在問! note your choice is c ide include stdio.h main getchar include void main 第二個for迴圈你不能用n來做j的條件啊,你這麼搞出來的絕對是個矩形。j...