一个整数与其因子之和相等,则称这个数为“完数”,比如说6=1+2+3。现在请用Python变成找出1000以内所有的完数,要求用自定义函数实现完数判断。
时间: 2023-05-26 21:04:05 浏览: 78
Java 完数 Mooc
5星 · 资源好评率100%
```python
def is_perfect_number(num):
factors = []
for i in range(1, num):
if num % i == 0:
factors.append(i)
if sum(factors) == num:
return True
else:
return False
for i in range(1, 1001):
if is_perfect_number(i):
print(i)
```
执行代码后,输出结果为:
```
6
28
496
```
阅读全文