1. 程式人生 > >練習十九:完全數計算

練習十九:完全數計算

完全數,又被稱作完美數貨完備數,是一些特色的自然數。它所有的真因子(即除了自身以外的約數)的和(即因子數),恰好等於它本身。如果一個數恰好等於它的因子之和,則成為“完全數”
題目:找出1000以內的所有完數,並輸出

  1 from functools import reduce
  2  for i in range(2,1001):
  3      list1 = []
  4      for j in range(1,i):
  5          if i%j == 0:
  6              list1.append(j)
  7      sumi = reduce(lambda a,b:a+b,list1) #真因子之和
  8
if i == sumi: 9 print(i)

執行結果:

6,28,496