C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

再帰を使用して数値の階乗を見つけるC++プログラム


非負の整数nの階乗は、n以下のすべての正の整数の積です。

例:4の階乗は24です。

4! = 4 * 3 * 2 *1
4! = 24

整数の階乗は、再帰プログラムまたは反復プログラムを使用して見つけることができます。

次のプログラムは、数値の階乗を見つけるための再帰プログラムを示しています-

#include <iostream>
using namespace std;
int fact(int n) {
   if ((n==0)||(n==1))
   return 1;
   else
   return n*fact(n-1);
}
int main() {
   int n = 4;
   cout<<"Factorial of "<<n<<" is "<<fact(n);
   return 0;
}

出力

Factorial of 4 is 24

上記のプログラムでは、関数fact()は再帰関数です。 main()関数は、階乗が必要な番号を使用してfact()を呼び出します。これは、次のコードスニペットによって示されます。

cout<<"Factorial of "<<n<<" is "<<fact(n);

数値が0または1の場合、fact()は1を返します。数値がそれ以外の場合、fact()は値n-1で再帰的に自身を呼び出します。

これは、次のコードスニペットを使用して示されています。

int fact(int n) {
   if ((n==0)||(n==1))
   return 1;
   else
   return n*fact(n-1);
}
を返します
  1. 再帰なしで数値の階乗を見つけるPythonプログラム

    再帰を使用せずに数値の階乗を見つける必要がある場合は、「while」ループを使用できます。 例 以下は同じのデモンストレーションです- my_num = int(input("Enter a number :")) my_factorial = 1 while(my_num>0):    my_factorial = my_factorial*my_num    my_num=my_num-1 print("The factorial of the number is : ") print(my_facto

  2. Pythonで再帰を使用して数の階乗を見つける方法は?

    数値の階乗は、1からその数値までのすべての数値の積です。 関数がそれ自体を呼び出す場合、その関数は再帰関数と呼ばれます。 次のプログラムでは、factorial()関数は1つの引数を受け入れ、値が1に達するまで値を1つ減らして、それ自体を呼び出し続けます。 例 def factorial(x):     if x==1:         return 1     else:         return x*factorial(x-1) f=factorial(5) pr