编写一个程序,让用户输入一个整数n,然后计算从1到n的所有质数的和和所有合数的和,并输出结果。此外,计算从1到n的所有质数的平方和和所有合数的平方和,并输出结果
时间: 2024-12-20 14:25:30 浏览: 66
要编写这个程序,你需要了解什么是质数和合数。质数是指只有两个正因子(1和自身)的自然数,而合数则至少有三个正因子。
首先,我们需要定义一个辅助函数来判断一个数字是否为质数。接着,我们将分别计算1到n范围内的所有质数和合数,以及它们各自的和、平方和。这里是一个简单的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 prime_sum_and_squares(n):
prime_total = 0
prime_square_total = 0
composite_total = 0
composite_square_total = 0
for i in range(1, n+1):
if is_prime(i):
prime_total += i
prime_square_total += i ** 2
else:
composite_total += i
composite_square_total += i ** 2
print(f"Prime numbers sum: {prime_total}")
print(f"Prime numbers squared sum: {prime_square_total}")
print(f"Composite numbers sum: {composite_total}")
print(f"Composite numbers squared sum: {composite_square_total}")
# Ask the user for input
n = int(input("Enter a positive integer: "))
prime_sum_and_squares(n)
```
当你运行这个程序时,它会提示用户输入一个整数n,然后根据这个值计算并输出从1到n范围内质数和合数的总和以及它们各自平方和的结果。
阅读全文