输入逗号分隔的正整数m和n(m<n),计算并输出m和n之间(包括m和n)的自然数中除了素数以外的奇数之和s1及偶数之和s2。输出时,一行输出空格分隔的s1和s2。 输入 正整数m和n(m<n),逗号分隔, 输出 空格分隔的s1和s2python
时间: 2024-12-20 08:30:55 浏览: 13
python习题 随机密码生成 + 连续质数计算
5星 · 资源好评率100%
为了实现这个功能,你可以编写一个Python程序,该程序会遍历给定范围内的数字,分别计算奇数和偶数的和,同时排除素数。首先需要有一个函数来判断是否是素数,然后是主函数处理输入并计算结果。以下是代码示例:
```python
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num**0.5) + 1):
if num % i == 0:
return False
return True
def sum_numbers(m, n):
s1 = 0 # 奇数之和
s2 = 0 # 偶数之和
for i in range(m, n+1): # 包含m和n
if i % 2 != 0 and not is_prime(i): # 奇数且非素数
s1 += i
elif i % 2 == 0: # 偶数
s2 += i
return s1, s2
# 主函数:接收用户输入,计算并输出结果
if __name__ == "__main__":
m, n = map(int, input("请输入正整数m和n(以逗号分隔): ").split(',')) # 获取用户输入
s1, s2 = sum_numbers(m, n)
print(f"{s1} {s2}") # 输出结果
阅读全文