Python 函数实现素数判断及区间素数输出
可以使用以下代码实现:
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
start, end = map(int, input().split(","))
for num in range(start, end + 1):
if is_prime(num):
print(num, end=' ')
print()
输入示例:
1,10
输出示例:
2 3 5 7
输入示例:
-10,10
输出示例:
2 3 5 7
代码说明:
is_prime(n)函数用于判断一个数n是否为素数。- 循环遍历 2 到
n的平方根,如果n可以被其中任何数整除,则n不是素数,返回False;否则n是素数,返回True。 start, end = map(int, input().split(","))读取用户输入的区间范围,并转换为整数类型。- 循环遍历
start到end之间的每个数,调用is_prime(num)函数判断是否为素数,如果是则输出。
代码优化:
- 循环遍历时,只遍历到
n的平方根即可,因为如果n可以被大于其平方根的数整除,那么它一定可以被小于其平方根的数整除。 - 使用
end=' '参数在输出素数时不换行,并添加空格。
总结:
该代码利用函数封装了判断素数的功能,并通过循环遍历区间输出所有素数。代码简洁易懂,并提供输入输出示例,方便读者理解和学习。
原文地址: https://www.cveoy.top/t/topic/Vgh 著作权归作者所有。请勿转载和采集!