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

数の階乗のためのPythonプログラム


この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。

問題の説明 −nの階乗を計算するタスク。

非負数の階乗は-

で与えられます
n! = n*n-1*n-2*n-3*n-4*.................*3*2*1

この問題には2つの解決策があります

  • 再帰的アプローチ
  • 反復的なアプローチ

アプローチ1-再帰的アプローチ

def factorial(n): # recursive solution
   if (n==1 or n==0):
      return 1
   else:
      return n * factorial(n - 1)
# main
num = 6
print("Factorial of",num,"is", factorial(num))

出力

('Factorial of', 6, 'is', 720)

下の画像に示すように、すべての変数はグローバルスコープで宣言されています

数の階乗のためのPythonプログラム

アプローチ2 −反復的アプローチ

def factorial(n):# iterative solution
   fact=1
   for i in range(2,n+1):
      fact=fact*i
   return fact
# main
num = 6
print("Factorial of",num,"is", factorial(num))

出力

('Factorial of', 6, 'is', 720)

下の画像に示すように、すべての変数はグローバルスコープで宣言されています

数の階乗のためのPythonプログラム

結論

この記事では、数nの階乗を計算する方法について学びました。


  1. n番目のフィボナッチ数のPythonプログラム

    この記事では、n番目のフィボナッチ数を計算します。 フィボナッチ数 以下に示す漸化式によって定義されます- Fn = Fn-1 + Fn-2 あり F 0 =0およびF1 =1。 まず、フィボナッチ数はほとんどありません 0,1,1,2,3,5,8,13,.................. フィボナッチ数を計算できます 再帰と動的計画法の方法を使用します。 それでは、Pythonスクリプトの形式での実装を見てみましょう アプローチ1:再帰方法​​ 例 #recursive approach def Fibonacci(n):    if n<0: &

  2. n番目のカタラン数のPythonプログラム

    この記事では、n番目のカタラン数の計算について学習します。 カタラン数 再帰式-によって定義される自然数のシーケンスです。 $$ C_ {0} =1 \:and \:C_ {n + 1} =\ displaystyle \ sum \ Limits_ {i =0} ^ n C_ {i} C_ {n-i} for \:n \ geq0; $$ n =0、1、2、3、…の最初のいくつかのカタラン数は 1、1、2、5、14、42、132、429、..............です。 .... カタラン数は、再帰と動的計画法の両方で取得できます。その実装を見てみましょう。 アプローチ1:再