3.编写一个Python程序,完成以下任务: (1)从用户输入中获取两个整数stant和end(假设start<=end),这两个整数定义了一个范围。 (2)在该范围内找出所有的素数。 (3)将找到的素数根据大小分为两组:小于等于100的素数和大于100的素数,并分别打印出来。
时间: 2024-09-24 14:28:21 浏览: 30
在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_primes(start, end):
primes = []
for num in range(start, end+1):
if is_prime(num):
primes.append(num)
# 分组并打印素数
small_primes = [p for p in primes if p <= 100]
large_primes = [p for p in primes if p > 100]
print(f"小于等于100的素数: {small_primes}")
print(f"大于100的素数: {large_primes}")
# 获取用户输入
start = int(input("请输入范围开始值: "))
end = int(input("请输入范围结束值 (确保 start <= end): "))
if start <= end:
find_primes(start, end)
else:
print("错误:起始值不能大于结束值。")
```
在这个程序中,我们首先定义了一个`is_prime`函数用于判断一个数是否为素数。然后通过`find_primes`函数,在给定范围内查找素数并按条件分类。最后,提示用户输入并处理可能出现的边界情况。运行此程序,用户可以得到所需的素数分组。
阅读全文