動的計画法を使用して数値の階乗を見つけるC++プログラム
正の整数nの階乗は、1 * 2 * 3 *...nに等しくなります。負の数の階乗は存在しません。ここでは、動的計画法を使用して特定の入力の階乗を見つけるためのC++プログラムが提供されています。
アルゴリズム
Begin
fact(int n):
Read the number n
Initialize
i = 1, result[1000] = {0}
result[0] = 1
for i = 1 to n
result[i] = I * result[i-1]
Print result
End サンプルコード
#include <iostream>
using namespace std;
int result[1000] = {0};
int fact(int n) {
if (n >= 0) {
result[0] = 1;
for (int i = 1; i <= n; ++i) {
result[i] = i * result[i - 1];
}
return result[n];
}
}
int main() {
int n;
while (1) {
cout<<"Enter integer to compute factorial (enter 0 to exit): ";
cin>>n;
if (n == 0)
break;
cout<<fact(n)<<endl;
}
return 0;
} 出力
Enter integer to compute factorial (enter 0 to exit): 2 2 Enter integer to compute factorial (enter 0 to exit): 6 720 Enter integer to compute factorial (enter 0 to exit): 7 5040 Enter integer to compute factorial (enter 0 to exit): 10 3628800 Enter integer to compute factorial (enter 0 to exit): 0
-
再帰を使用して数値の階乗を見つけるJavaプログラム
この記事では、再帰を使用して数値の階乗を見つける方法を理解します。数値の階乗は、それ自体とその小さい数値のそれぞれの積です。階乗は、ゼロより大きい自然数に適用される関数です。階乗関数の記号は、次のような数字の後の感嘆符です:5! 再帰関数は、特定の条件が満たされるまで、それ自体を複数回呼び出す関数です。再帰は、自己相似的な方法でアイテムを繰り返すプロセスです。プログラミング言語では、プログラムで同じ関数内の関数を呼び出すことができる場合、それは関数の再帰呼び出しと呼ばれます。 多くのプログラミング言語は、スタックを使用して再帰を実装します。一般に、関数(呼び出し元)が別の関数(呼び出し先)
-
数の階乗を見つけるJavaプログラム
この記事では、数の階乗を見つける方法を理解します。数値の階乗は、それ自体とその小さい数値のそれぞれの積です。 階乗は、ゼロより大きい自然数に適用される関数です。階乗関数の記号は、次のような数字の後の感嘆符です:5! 以下は同じのデモンストレーションです- 入力 入力が-であると仮定します Enter the number : 5 出力 必要な出力は次のようになります。つまり、5です。 =5x4x3x2x1 The factorial of 5 is 120 アルゴリズム Step1- Start Step 2- Declare three integers: my_inpu