# 完全数(Perfect Number)是指一个正整数,它等于除自身外所有正因子的和。
# 例如,6 是一个完全数,因为它的因子有 1, 2, 3,而 1 + 2 + 3 = 6。
def is_perfect_number(n):
if n <= 0:
return False
# 找出所有小于 n 的正因子
divisors = [i for i in range(1, n) if n % i == 0]
# 判断这些因子的和是否等于 n
return sum(divisors) == n
# 测试代码
if __name__ == "__main__":
test_numbers = [6, 28, 496, 8128, 33550336, 12, 20]
for number in test_numbers:
print(f"{number} 是完全数: {is_perfect_number(number)}")
定义函数 is_perfect_number(n):该函数用于判断给定的正整数 n 是否为完全数。
n 小于等于 0,则直接返回 False,因为完全数必须是正整数。n 的正因子,并存储在 divisors 列表中。n 进行比较,如果相等则返回 True,否则返回 False。测试代码:在 if __name__ == "__main__": 块中,定义了一些测试数字,并调用 is_perfect_number 函数来检查它们是否为完全数,最后打印结果。
上一篇:python print()
下一篇:python ord函数
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站