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

再帰を使用して数値が素数であるか素数でないかを検出するPythonプログラム


数値が素数であるかどうか、または再帰手法を使用していないかどうかを確認する必要がある場合は、メソッドが定義され、「while」条件が使用されます。

再帰は、より大きな問題の小さなビットの出力を計算し、これらのビットを組み合わせて、より大きな問題の解決策を提供します。

以下は同じのデモンストレーションです-

def check_prime(my_num, my_val = None):
   if my_val is None:
      my_val = my_num – 1
   while my_val >= 2:
      if my_num % my_val == 0:
         print(“The number is not a prime number”)
         return False
      else:
         return check_prime(my_num, my_val-1)
   else:
      print(“The number is a prime number”)
      return ‘True’
my_num = int(input(“Enter the number that you wish to examine : “))
print(“The number is being checked…”)
check_prime(my_num)

出力

Enter the number that you wish to examine : 46
The number is being checked…
The number is not a prime number

説明

  • 「check_prime」という名前のメソッドが定義されています。このメソッドは、パラメータとしてNoneに割り当てられた値を取ります。
  • 変数がNoneの場合、変数は1ずつデクリメントされた数値に割り当てられます。
  • 変数の値が2より大きい場合、数値は値で除算され、余りは0と比較されます。
  • 余りが0の場合、素数ではないと見なされます。
  • それ以外の場合は、数値を渡すことでメソッドが再度呼び出され、値が1ずつデクリメントされます。
  • 機能の外で、ユーザーはチェックする必要のある番号を入力するように求められます。
  • 関数を呼び出し、この値をパラメーターとして渡すことにより、数値がチェックされます。
  • 関連する出力がコンソールに表示されます。

  1. 素数をチェックするPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −数が与えられているので、与えられた数が素数であるかどうかを確認する必要があります。 1より大きい特定の正の数で、1以外の要素はなく、その数自体は素数と呼ばれます。 2、3、5、7などは他の要素がないため素数です。 以下のこのプログラムでは、素数または非素数の性質について番号がチェックされます。 1以下の数は素数とは言えません。したがって、数値が1より大きい場合にのみ反復します。 ここで、その数が2から(num-1 // 2)の範囲の任意の数で正確に割り切れるかどうかを確認します。指定された範囲内に何ら

  2. 数の最大の素因数を見つけるためのPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 正の整数nが与えられます。数の最大の素因数を見つける必要があります。 アプローチ 指定された数値を数値の約数で割って因数分解します。 最大素因数を更新し続けます。 例 import math def maxPrimeFactor(n):    # number must be even    while n % 2 == 0:       max_Prime = 2       n /= 1