當前位置:首頁 » 編程語言 » 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));

熱點內容
打開支付界面密碼如何設置 發布:2025-09-18 12:01:35 瀏覽:525
絕地求生和賽博朋克2077哪個吃配置 發布:2025-09-18 11:35:20 瀏覽:165
亞索腳本秒風 發布:2025-09-18 11:35:07 瀏覽:433
sql表的復制 發布:2025-09-18 11:02:25 瀏覽:68
三位密碼鎖忘記密碼如何重置 發布:2025-09-18 10:21:52 瀏覽:186
linux怎麼編譯c文件 發布:2025-09-18 09:55:16 瀏覽:305
python安裝後無法運行 發布:2025-09-18 09:45:57 瀏覽:239
安卓手機怎麼剪輯音樂 發布:2025-09-18 09:44:16 瀏覽:784
伺服器地址修改在哪找 發布:2025-09-18 09:42:41 瀏覽:444
sntp伺服器地址 發布:2025-09-18 09:28:36 瀏覽:555