在Python中,利用循环嵌套模式编写一个代码,输入一个正整数n,输出不大于n的最大素数
时间: 2024-09-10 16:24:04 浏览: 238
Python例题(一) 输入一个正整数判断是不是素数
在Python中,我们可以通过嵌套循环来编写一个程序,用于找出不大于给定正整数n的最大素数。首先,我们需要一个函数来判断一个数是否为素数,然后从n开始向下遍历,直到找到第一个素数为止。以下是实现这一功能的代码示例:
```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 find_max_prime(n):
"""找出不大于n的最大素数"""
for num in range(n, 1, -1): # 从n开始递减到2
if is_prime(num): # 判断当前数字是否为素数
return num # 如果是素数,返回该数并结束函数
return None # 如果没有找到素数,则返回None
# 输入一个正整数n
n = int(input("请输入一个正整数n:"))
# 输出不大于n的最大素数
print("不大于{}的最大素数是:{}".format(n, find_max_prime(n)))
```
在这段代码中,`is_prime` 函数用于判断一个数是否为素数。它检查从2到该数平方根的整数是否能整除这个数。`find_max_prime` 函数则从n开始向下遍历,使用`is_prime`函数来判断每个数是否为素数,一旦找到素数就返回该数值。
阅读全文