使用递归查找一个数是素数还是非素数的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(“该数字不是素数”)
         return False
      else:
         return check_prime(my_num, my_val-1)
   else:
      print(“该数字是素数”)
      return ‘True’
my_num = int(input(“输入您想要检查的数字:”))
print(“正在检查该数字…”)
check_prime(my_num)

输出

输入您想要检查的数字:46
正在检查该数字…
该数字不是素数

说明

  • 定义了一个名为’check_prime’的方法,该方法带有一个参数并将值分配为None。
  • 如果变量为None,则变量将被分配为减1的数字。
  • 如果变量的值大于2,则将该数字除以该值,并将其余数与0进行比较。
  • 如果余数为0,则被视为非素数。
  • 否则,通过传递数字和减1的值再次调用该方法。
  • 在函数的外部,用户被要求输入需要检查的数字。
  • 通过调用函数并将此值作为参数传递来检查数字。
  • 恰当的输出将在控制台上显示。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程