當前位置:首頁 » 編程語言 » c語言歐拉公式

c語言歐拉公式

發布時間: 2024-08-10 01:19:55

⑴ 怎樣用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語言程序,歐拉公式求解常微分方程,步長0.01,就是求出100個點,然後

floatdx=0.01;//步長
floatx=0,y=1;//初始值
inti=1;
while(i<100)
{
floatk=y-(2*x)/(3*y);//求斜率,也就是y'
y+=k*dx;
x+=dx;
printf("x=%f,y=%f ",x,y);//輸出
i++;
}

⑶ C語言函數,用歐拉公式算三角形面積,看看哪錯了

這個是海倫公式。
實現上有兩個缺陷,
1,螞兆沒有亮物納判敬沒斷輸入的三個邊長,是否能組成三角形;
2,海倫公式寫錯了,應該這樣子寫 area=sqrt(s*(s-a)*(s-b)*(s-c));

熱點內容
傳奇是要什麼配置的手機 發布:2024-11-25 18:43:34 瀏覽:949
榮耀v6如何設置程序安裝密碼 發布:2024-11-25 18:43:25 瀏覽:556
C語言讀盤 發布:2024-11-25 18:41:55 瀏覽:573
我的世界伺服器被破壞了怎麼恢復 發布:2024-11-25 18:27:57 瀏覽:329
日常電瓶叉車配置有哪些 發布:2024-11-25 18:21:17 瀏覽:361
java的二分查找 發布:2024-11-25 18:21:11 瀏覽:24
買帕薩特選哪個配置 發布:2024-11-25 18:17:23 瀏覽:224
編程很掙錢嗎 發布:2024-11-25 18:13:43 瀏覽:936
接受btc支付的香港雲伺服器 發布:2024-11-25 18:02:09 瀏覽:909
華為手機怎麼密碼解鎖 發布:2024-11-25 17:56:34 瀏覽:938