如下所示:
# -*- coding: utf-8 -*-# 要求:用python方法找出1000以內的所有完數,并輸出。def f(n): list = [] for i in range(2, n + 1): for j in range(2, i / 2): if i % j == 0 and j <= (i / j): list.append(j) list.append(i / j) if sum(list) + 1 == i: print i list = [] if __name__=="__main__": n=int(raw_input("請輸入最大范圍:")) f(n)
運行結果:
請輸入最大范圍:1000628496
總結:
sum可以直接對列表進行求和!
|
新聞熱點
疑難解答