欢迎访问宙启技术站
智能推送

使用Python编写的isPrime()函数:判定给定数是否为素数

发布时间:2023-12-11 06:18:44

这是一个使用Python编写的isPrime()函数,用于判断给定的数是否为素数。

def isPrime(num):
    if num <= 1:
        return False
    for i in range(2, int(num ** 0.5) + 1):
        if num % i == 0:
            return False
    return True

函数接受一个参数num,该参数为待判断的数。该函数首先判断如果给定的数小于等于1,则直接返回False,因为素数定义上大于1,小于等于1的数不满足素数的条件。

接下来,函数使用一个for循环从2开始遍历到int(num ** 0.5) + 1int(num ** 0.5)用于计算num的平方根向下取整。这样的遍历范围足够,因为如果num有一个大于其平方根的约数,那么就会存在另一个比其平方根小的约数。在循环中,如果num被当前遍历的数整除,则返回False,因为这意味着num不是素数。

如果有遍历范围内的数都不能整除num,则返回True,表示num是素数。

下面是一些使用例子:

print(isPrime(5))  # 输出: True
print(isPrime(10))  # 输出: False
print(isPrime(17))  # 输出: True
print(isPrime(25))  # 输出: False
print(isPrime(37))  # 输出: True

这些例子会输出对应数是否为素数的结果。

该函数实现了一个简单而有效的素数判断方法。请注意,对于非常大的数,该函数效率可能就不太高了,因为在遍历范围内找到约数可能需要更长的时间。在实际应用中,如果需要判断大数是否为素数,可能需要使用更高效的算法。