请定义一个prime ()函数求整数以内(不包括n)的所有素数(1不是素数),并返回一个素数列表
时间: 2023-06-14 15:08:32 浏览: 116
计算 N 以内的所有素数
4星 · 用户满意度95%
以下是一个 Python 的实现,使用了经典的筛法算法:
```python
def prime(n):
primes = []
is_prime = [True] * n
for num in range(2, n):
if is_prime[num]:
primes.append(num)
for multiple in range(num*num, n, num):
is_prime[multiple] = False
return primes
```
该函数接收一个整数 n 作为参数,返回一个列表,包含所有小于 n 的素数。算法的基本思想是,从小到大遍历所有数,如果该数为素数,则将其加入素数列表,并将其所有的倍数标记为合数。这样,当遍历到大于某个数的倍数时,该数一定已经被标记为合数,可以直接跳过。
阅读全文