编写函数IsPerfectNum(n),判断整数n是否为完数,并编写测试代码调用该函数。完数是指一个数恰好等于除自身外的因子之和,如6=1+2+3
时间: 2024-04-29 13:26:17 浏览: 147
好的,我明白您的要求了。以下是一个用Python编写的函数IsPerfectNum(n),可以用于判断一个正整数n是否为完数:
```python
def IsPerfectNum(n):
factors = [1] # 因子列表,初始值为1
for i in range(2, n): # 注意不包括n本身
if n % i == 0:
factors.append(i)
if sum(factors) == n:
return True
else:
return False
```
然后,我们可以编写一些测试代码来测试这个函数:
```python
# 测试1:6是一个完数
result = IsPerfectNum(6)
print(result) # 应该输出 True
# 测试2:28是一个完数
result = IsPerfectNum(28)
print(result) # 应该输出 True
# 测试3:12不是一个完数
result = IsPerfectNum(12)
print(result) # 应该输出 False
# 测试4:496是一个完数
result = IsPerfectNum(496)
print(result) # 应该输出 True
# 测试5:8128是一个完数
result = IsPerfectNum(8128)
print(result) # 应该输出 True
```
希望这个函数和测试代码能帮到您!
阅读全文