求素数的python代码
时间: 2024-06-17 15:05:05 浏览: 106
下面是一个求素数的Python代码示例:
```
def is_prime(num):
"""
判断一个数是否为素数
"""
if num <= 1:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
def get_primes(n):
"""
获取n以内的素数列表
"""
primes = []
for i in range(2, n+1):
if is_prime(i):
primes.append(i)
return primes
```
该代码定义了两个函数,is_prime用于判断一个数是否为素数,get_primes用于获取n以内的素数列表。使用方法如下:
```
primes = get_primes(100)
print(primes)
```
以上代码会输出100以内的素数列表。
相关问题
使用列表实现筛选法求素数Python代码
下面是使用列表实现筛选法求素数的 Python 代码:
```python
def sieve_of_eratosthenes(n):
""" 使用筛选法求出小于等于n的素数 """
primes = [True] * (n + 1)
primes[0], primes[1] = False, False
for i in range(2, int(n ** 0.5) + 1):
if primes[i]:
for j in range(i ** 2, n + 1, i):
primes[j] = False
return [i for i in range(n + 1) if primes[i]]
# 测试代码
print(sieve_of_eratosthenes(30))
```
此代码使用了一个名为 `primes` 的布尔列表,其中 `primes[i]` 表示 `i` 是否为素数。一开始将所有数都标记为素数,然后从2开始,将其倍数标记为非素数。最后,将所有标记为素数的数添加到一个列表中并返回。
最大素数python代码
以下是一个找到小于等于给定数字的最大素数的 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
def find_max_prime(n):
for i in range(n, 1, -1):
if is_prime(i):
return i
return None
```
使用 `is_prime()` 函数来检查一个数字是否为素数,然后从给定数字 `n` 开始向下迭代,直到找到最大的素数为止。如果找不到素数,返回 `None`。
阅读全文