C 伽馬函式計算 可求小數

2022-03-19 09:07:12 字數 622 閱讀 2001

簡單的說就是整數階乘的推廣,它有乙個積分的表示式:

γ(x)=∫e^(-t)*t^(x-1)dt (積分的下限式0,上限式+∞)

演算法源自《常用演算法程式集》徐士良

#include 

"stdio.h

"double

gamma(x)

doublex;;

if(x

<=

0.0)y=

x;if

(y<=

1.0)

else

if(y

<=

2.0)

else

if(y

<=

3.0)

else}s

=a[0];

u=y-

2.0;

for(i=1

; i<=

10; i++)

s=s*

t;return

(s);

}double

decimalfactorial(

double

x)void

main()

求小數階乘: 3.5!=γ(x+1)=11.631730

二項分布 多項分布 伽馬函式 Beta分布

0 1分布 在一次試驗中,要麼為0要麼為1的分布,叫0 1分布。二項分布 做n次伯努利實驗,每次實驗為1的概率為p,實驗為0的概率為1 p 有k次為1,n k次為0的概率,就是二項分布b n,p,k 二項分布計算 換一種表達方式,做n次伯努利實驗,每次實驗為1的概率是p1,實驗為0的概率是p2,有p...

C 計算保留兩位小數

注意c 之間除法是不保留餘數的,如下所示,因此需帶上小數字除 double v1 1 3 結果為0.0 double v2 7 3 結果為2.0 如下 保留3位小數 double result double math.round decimal 1.0 3.0 3 console.write dou...

用馬青公式計算 的c程式

乙個計算 的c程式 由於大多數計算機內建演算法有一定精度限制,你想計算那麼多位就會產生問題。這裡有乙個c程式,允許計算要多少有多少。但馬青公式在試圖計算億位時不理想。下面就是這個程式。超過萬位時此程式就不能勝任了。而jason chen的程式可算到10萬位!目前最快的方法是chudnovsky ra...