用Python 设计函数,判断“完数”,一个数如果恰好等于它的因子之和,这个数就称为“完数”,例如6=1+2+3,如果是,返回True,否则返回False。
时间: 2023-11-11 14:21:45 浏览: 106
判断一个是否是完数。
可以这样设计函数来判断一个数是否是完数:
```python
def is_perfect_number(num):
factors = []
for i in range(1, num):
if num % i == 0:
factors.append(i)
return sum(factors) == num
```
在这个函数中,我们首先定义一个空列表`factors`来存储`num`的因子,然后通过一个循环来找出`num`的所有因子并添加到`factors`列表中。最后,我们使用`sum`函数来计算`factors`列表中所有元素的和,如果和等于`num`,则说明`num`是完数,返回True,否则返回False。
你可以调用这个函数来检查一个数是否为完数,例如:
```python
print(is_perfect_number(6)) # True
print(is_perfect_number(28)) # True
print(is_perfect_number(496)) # True
print(is_perfect_number(8128)) # True
print(is_perfect_number(10)) # False
```
阅读全文