Python求真素数
时间: 2024-06-08 17:03:37 浏览: 17
在 Python 中,求真素数(Prime Numbers)通常是指大于1的自然数,除了1和它本身以外,不能被其他自然数整除的数。你可以使用循环、条件判断以及一些优化算法来实现这个功能。以下是一个简单的 Python 函数,使用埃拉托斯特尼筛法(Sieve of Eratosthenes)来找出真素数:
```python
def find_primes(n):
primes = [True for _ in range(n+1)]
p = 2
while p * p <= n:
if primes[p]:
# 把p的倍数标记为非素数
for i in range(p * p, n+1, p):
primes[i] = False
p += 1
# 返回n范围内的所有素数
return [i for i in range(2, n) if primes[i]]
# 使用函数
primes_under_50 = find_primes(50)
```
在这个代码中,`find_primes` 函数首先创建了一个布尔列表 `primes`,假设从2到n的所有数字都是素数。然后从2开始,遍历列表中的每个素数 `p`,将它的所有倍数标记为非素数。最后筛选出仍然标记为 `True` 的数,就是素数。
相关问题
python判断素数
以下是两种Python判断素数的方法:
1.使用函数判断素数
```python
def is_prime(n):
"""判断素数的函数,接收一个正整数为参数,参数是素数时返回True,否则返回False"""
if n < 2:
return False # 0、1、负数以及数都不是素数
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
```
2.在控制台中录入一个整数,判断是否为素数
```python
number = int(input("请输入整数:"))
if number < 2:
print("不是素数")
else:
for i in range(2, int(number ** 0.5) + 1):
if number % i == 0:
print("不是素数")
break
else:
print("是素数")
```
python 判断素数
以下是Python判断素数的代码示例:
```python
num = int(input("请输入一个整数:"))
if num < 2:
print("%d不是一个素数" % num)
else:
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
print("%d不是一个素数" % num)
break
else:
print("%d是一个素数" % num)
```
代码说明:
1. 首先,我们从控制台输入一个整数num。
2. 如果num小于2,则它不是素数,直接输出结果。
3. 否则,我们从2到num的平方根(向上取整)的范围内遍历,判断num是否能被整除。
4. 如果能被整除,则num不是素数,输出结果。
5. 如果不能被整除,则num是素数,输出结果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)