编写一个 Python 程序,使用 For 循环、While 循环和函数来查找素数。任何只能被 1 和它本身整除的自然数都称为素数。
列表如下:2、3、5、7、11、13、17、19、23、29、31、37、41、43、47、53、59、61、67、71、73、79、83、89、97、101、103、107、109 等。2 是唯一的偶数。
Python 使用 For 循环查找素数程序
此程序允许用户输入任何整数值,并使用 For 循环检查给定数字是否为素数。
Number = int(input(" Please Enter any Number: "))
count =Number = int(input("Please Enter any Value: "))
count = 0
for i in range(2, (Number//2 + 1)):
if(Number % i == 0):
count = count + 1
break
if (count == 0 and Number != 1):
print(" %d is a Prime" %Number)
else:
print(" %d is Not" %Number)

在 for 循环中,有一个 If 语句来检查值是否恰好等于 0。如果条件为 True,则 Count 值递增,然后执行 Break Statement。接下来,我们使用另一个 If 语句来检查 Count 是否为零以及 Num 是否不等于 1。
在上面的示例中,用户输入的整数是 365。
第一次迭代:for i in range(2, 365//2)。这意味着,for i in range (2, 182.5) – 条件为 True。现在,检查 if 条件 – if (365%2 == 0)。如您所知,条件为 False。接下来,i 变为 3
对查找素数的程序的其余 For 循环迭代执行相同操作。
接下来,它进入 Python If 语句。if(count == 0 && Number != 1 )。在以上所有迭代中,如果条件失败,Count 值未从初始化的 0 递增。我们使用的是 365(不为零)。因此,条件为 True,这意味着它是素数。
Python 使用 While 循环查找素数程序
此程序与上面的程序相同。我们只是将上面 程序中的 For 循环替换为 While 循环。
# using While Loop
Number = int(input(" Please Enter any Num: "))
count = 0
i = 2
while(i <= Number//2):
if(Number % i == 0):
count = count + 1
break
i = i + 1
if (count == 0 and Number != 1):
print(" %d is a Prime" %Number)
else:
print(" %d is not" %Number)

Python 使用函数查找素数程序
此程序与第一个示例相同。但是,我们将因子逻辑通过定义新的 Function 来分离。接下来,If Else 语句检查给定数字是否为素数。
# using Functions
def finding_factors(Number):
count = 0
for i in range(2, (Number//2 + 1)):
if(Number % i == 0):
count = count + 1
return count
Num = int(input(" Please Enter any Num: "))
cnt = finding_factors(Num)
if (cnt == 0 and Num != 1):
print(" %d is a Prime" %Num)
else:
print(" %d is not" %Num)
