Gamma函数
来源:互联网 发布:搞笑网络歌曲 编辑:程序博客网 时间:2024/05/19 22:06
//计算Gamma函数值
#include <iostream>
using namespace std;
class gamma
{
private:
int i, n;
double F, prod, result, x, y;
double a[25];
public:
double gamma_fn(double);
void solution();
};
void main()
{
gamma gamma0;
gamma0.solution();
}
void gamma::solution()
{
cout << "\n输入x(x > 0) = ";
cin >> x;
y = x;
if (x > 2)
{
prod = 1.0;
do
{
x--;
prod *= x;
}while (x > 2);
result = prod * gamma_fn(x);
}
else
{
result = gamma_fn(x);
}
cout << "\n在" << y << "点的Gamma函数值 = " << result << endl;
}
double gamma::gamma_fn(double y)
{
n = 24;
a[0] = 1.0;
a[1] = 0.5772156649015329;
a[2] = -0.6558780715202538;
a[3] = -0.0420026350340952;
a[4] = 0.1665386113822915;
a[5] = -0.0421977345555443;
a[6] = -0.009621971527877;
a[7] = 0.007218943246663;
a[8] = -0.0011651675918591;
a[9] = -0.0002152416741149;
a[10] = 0.0001280502823882;
a[11] = -0.0000201348547807;
a[12] = -0.0000012504934821;
a[13] = 0.000001133027232;
a[14] = -0.0000002056338417;
a[15] = 0.000000006116095;
a[16] = 0.0000000050020075;
a[17] = -0.0000000011812746;
a[18] = 0.0000000001043427;
a[19] = 0.0000000000077823;
a[20] = -0.0000000000036968;
a[21] = 0.00000000000051;
a[22] = -0.0000000000000206;
a[23] = -0.0000000000000054;
a[24] = 0.0000000000000014;
F = a[n];
for (i = (n - 1); i >= 0; i--)
{
F = F * y + a[i];
}
F *= y;
return(1 / F);
}
- Gamma函数
- Gamma函数
- Gamma 函数
- 神奇的Gamma函数
- 神奇的Gamma函数
- gamma曲线函数
- Gamma 函数及其应用
- 用java计算gamma函数
- Gamma函数相关matlab代码
- Gamma 分布函数可加性证明
- gamma
- gamma
- Gamma
- gamma
- 单位阶跃函数,δ函数, gamma函数
- LDA-math-神奇的Gamma函数
- LDA-math-神奇的Gamma函数
- 转帖:LDA-math-神奇的Gamma函数
- 关于if(!cin)
- explicit构造函数
- 100的阶乘
- 我和你一样,一样的坚强
- TCP长连接与短连接的区别
- Gamma函数
- Android dip,px,pt,sp的区别
- java标识接口的作用
- android反编译工具总结
- setAttribute和setParameter…
- Android API之ImageView.ScaleType代码演示
- Matlab的曲线拟合工具箱CFtool的使用
- 使用SPSS进行多元回归分析
- 解决vs2010到word复制产生的中文乱码