自然数nの階乗を求める
階乗計算は、数値計算なら一瞬
自然数 n の階乗を求める場合、手計算でも容易に求められますが、自然数 n の値が大きくなるほど、求めるのが難しくなってきます。そこで、数値計算の手を借りると、一瞬で求める事が可能になります。
プログラムソース
以下は、自然数 n の階乗を求めるプログラムのソースコード例です。
処理は複雑ではありませんので、関数を使わなくても容易に書けますが、関数を使いこなせると、確実に後のプログラミング作業が楽になりますので、関数を使用する事をおすすめします。
#include <stdio.h>
long int factorial(int n); //自然数nを受け取り、階乗計算結果を返す関数
int main()
{
int n;
printf("自然数を入力して下さい\n");
scanf("%d",&n);
printf("自然数 %d の階乗は %ld です。\n",n,factorial(n));
return 0;
}
long int factorial(int n)
{
long int result;
result = 1;
do {
result = result * n;
n--;
} while(n > 0); //nが0になったらループ終了となる
return result;
}
数値計算実行結果
上記のプログラムを実行すると、自然数 n の入力を求められます。例として 5 と入力すると、以下のように表示されます。
自然数を入力して下さい 5 自然数 5 の階乗は 120 です。
2009/04/19 更新
