快速判断一个数是否为素数Python
时间: 2024-03-19 12:38:45 浏览: 119
python判断质数-03-快速体验函数.ev4.rar
要快速判断一个数是否为素数,可以使用以下方法:
1. 方法一:试除法
遍历从2到该数的平方根的所有整数,判断是否能整除该数。如果存在能整除的数,则该数不是素数;否则,该数是素数。
2. 方法二:试除法优化
在方法一的基础上,可以进一步优化。首先判断该数是否为2或3,如果是,则直接返回素数。然后判断该数是否能被2或3整除,如果能,则不是素数。接着从5开始,遍历所有6的倍数两侧的数(6k-1和6k+1),判断是否能整除该数。如果存在能整除的数,则该数不是素数;否则,该数是素数。
下面是一个示例代码:
```python
import math
def is_prime(num):
if num < 2:
return False
if num == 2 or num == 3:
return True
if num % 2 == 0 or num % 3 == 0:
return False
sqrt_num = int(math.sqrt(num))
for i in range(5, sqrt_num + 1, 6):
if num % i == 0 or num % (i + 2) == 0:
return False
return True
```
阅读全文