如何使用 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

更新时间: 05-03-2020

1K+ 次浏览

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告