Python 素数
时间: 2023-11-05 19:14:33 浏览: 68
Python判断一个数是否为素数
素数是只能被 1 和它本身整除的正整数。下面是一个 Python 程序,用于检查一个数是否为素数:
```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
```
这个函数的参数是一个正整数 `n`,它的返回值是一个布尔值,表示 `n` 是否为素数。如果 `n` 是素数,返回 `True`;否则返回 `False`。
这个函数的实现方法是:如果 `n` 小于等于 1,它不是素数;否则从 2 开始,枚举所有小于等于 `n` 的正整数,如果其中有一个数可以整除 `n`,那么 `n` 不是素数,返回 `False`;否则 `n` 是素数,返回 `True`。
在函数中,这个枚举范围从 2 开始,到 `n` 的平方根加 1 结束。这是因为,如果 `n` 有一个大于它的平方根的因子,那么它一定有一个小于它的平方根的因子,这个小的因子可以被找到。而如果 `n` 是合数,它一定有一个小于等于它的平方根的因子,这个因子也可以被找到。
下面是一个使用这个函数的例子:
```python
n = 23
if is_prime(n):
print(n, "is prime")
else:
print(n, "is not prime")
```
这个程序的输出是:
```
23 is prime
```
阅读全文