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

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


数値の階乗は、1からその数値までのすべての数値の積です。

関数がそれ自体を呼び出す場合、その関数は再帰関数と呼ばれます。

次のプログラムでは、factorial()関数は1つの引数を受け入れ、値が1に達するまで値を1つ減らして、それ自体を呼び出し続けます。

def factorial(x):
    if x==1:
        return 1
    else:
        return x*factorial(x-1)

f=factorial(5)
print ("factorial of 5 is ",f)
出力

結果は

factorial of 5 is  120



  1. Python関数の引数の数を見つけるにはどうすればよいですか?

    次のようなスクリプトqux.pyがあるとします #qux.py def aMethod1(arg1, arg2):      pass def aMethod2(arg1,arg2, arg3, arg4, arg5):     pass このスクリプトの内容にアクセスできないと仮定すると、次のように、指定された関数の引数の数を見つけることができます Python関数内のパラメーター名のリストを見つけるには、inspectモジュールをインポートし、指定されたスクリプトqux.pyもインポートします。 inspect.getargspec(

  2. 階乗を見つけるために再帰的なPython関数を書く方法は?

    次のコードは、n=6およびn=15の階乗を計算します 例 def factorial(n):     if n == 1:       return 1     else:       res = n * factorial(n-1)     return res print ("factorial(6) = %d"  %factorial(6)) print ("factorial(15) = %d"  %fact