如何使用 Python 识别和打印某个闭区间 [ 2, n ] 中的所有完全数?
完全数是等于其真因子之和的正整数。最小的完全数是 6,它等于 1、2 和 3 之和。
你可以在给定范围内通过测试给定范围内每个数字的给定条件来找出完全数。
示例
def print_perfect_nums(start, end): for i in range(start, end + 1): sum1 = 0 for x in range(1, i): # Check if a divisor, if it is, add to sum if(i % x == 0): sum1 = sum1 + x if (sum1 == i): print(i) print_perfect_nums(1, 300)
输出
这将输出
6 28
广告