使用Python编写的isPrime()函数:判断一个数字是否为素数的方法
发布时间:2023-12-11 06:19:51
下面是使用Python编写的isPrime()函数的代码:
def isPrime(num):
"""
判断一个数字是否为素数
参数:
num:int,待判断的数字
返回值:
bool,True表示是素数,False表示不是素数
"""
# 素数大于1
if num > 1:
# 查找范围是从2到num的平方根
for i in range(2, int(num**0.5) + 1):
if num % i == 0:
return False
return True
return False
# 使用例子
num1 = 17
num2 = 20
if isPrime(num1):
print(f"{num1}是素数")
else:
print(f"{num1}不是素数")
if isPrime(num2):
print(f"{num2}是素数")
else:
print(f"{num2}不是素数")
上述代码实现了一个名为isPrime()的函数,用于判断一个数字是否为素数。以上是该函数的用例示例。
在使用例子中,我们分别使用了两个数字num1和num2进行了判断。首先判断num1,因为17是一个素数,所以输出结果为"17是素数"。然后判断num2,因为20不是一个素数,所以输出结果为"20不是素数"。
该函数的实现原理是,对于待判断的数字num,我们从2开始到num的平方根(向上取整)之间的所有数字进行遍历,如果存在一个数字能整除num,那么num就不是素数,返回False;如果所有数字都不能整除num,那么num就是素数,返回True。如果num小于等于1,直接返回False。
这种方法的时间复杂度是O(sqrt(n)),其中n是待判断的数字。
