• ベストアンサー

C言語によるガンマ関数の記述

今、C言語を用いてガンマ関数を計算する方法を模索中でです。 理想的にはガンマ関数の引数に数値を入れたら戻り値を返すというのがいいのですがそうもうまくいかないと思います。 そこで以下のような形で整数の場合と非整数の場合で作ることを考えています。しかし、引数が整数のときはわかるのですが、非整数のときがわかりません。どうしたらよいでしょうか。 以下に関数の概要を掲載します。 ==========関数の概要=========== 関数名:Gamma(x) 戻り値:double 引数:x[double] 1)引数が0より大きい整数(1,2,3...)のとき   階乗の自己回帰文を使用して計算 2)引数が0より大きい非整数の場合 ==========▲ここまで==========

質問者が選んだベストアンサー

  • ベストアンサー
noname#245945
noname#245945
回答No.3

奥村晴彦先生の『C言語によるアルゴリズム辞典』に載っていました。

その他の回答 (2)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

今の ISO C の仕様ではΓ関数もちゃんとあるんですけどね. もう 10年にもなろうというのに microsoft が対応しようとしてないのが問題なだけで. でも, 検索すると出てくるなぁ....

参考URL:
http://www.sist.ac.jp/~suganuma/cpp/2-bu/7-sho/C++/gamma.txt
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

ISO C なら tgamma.

yf491224
質問者

補足

早速の回答ありがとうございます。 指摘された関数を探したのですが見当たりませんでした。 後、言い忘れましたがc言語はVisual C++2008 Express Edition を使おうと思っていますのでよろしくお願いいたします。

関連するQ&A

専門家に質問してみよう