用python编写下面程序,判断一个正整数是否为完数。完数定义:一个数的所有因子(包括1)之和等于它自身,这个数就是完数。比如6=1+2+3,6是完数。 输入格式: 例如:输入一个正整数 6 输出格式: 输出: 6=1+2+3
时间: 2024-10-21 13:15:35 浏览: 79
3_判断素数_yes_
在Python中,你可以通过创建一个函数来判断一个正整数是否为完数。首先,我们需要编写一个计算给定数字所有因子的函数,然后将这些因子相加并检查是否等于原数。以下是一个简单的示例:
```python
def is_perfect_number(num):
factors = []
for i in range(1, num + 1):
if num % i == 0:
factors.append(i)
# 检查因子之和是否等于原始数值
if sum(factors) == num:
return f"{num}={'+'.join(str(factor) for factor in factors)}"
else:
return f"{num}不是完数"
# 输入示例
input_num = int(input("请输入一个正整数: "))
print(is_perfect_number(input_num))
```
在这个程序中,用户会被提示输入一个正整数,然后`is_perfect_number`函数会计算其因子并检查是否为完数。如果是,它会按照指定的格式返回结果;如果不是,则表示该数不是完数。
阅读全文