Python求1~300之間所有的完數

題目概述:

一個數如果恰好等於它的因子之和,這個數就稱爲“完數”,例如6的因子爲1、2、3,而6=1+2+3,因此6是“完數” 。現在求出1~300之間所有的完數,並且輸出它們的因子和個數。

實現代碼:

count=0
for i in range(1,301):
    list1=[]
    for j in range(1,i):
        if i%j==0:
            list1.append(j)
    if sum(list1)==i:
        count+=1
        print("%d是完數,因子是"%i,list1)
print('300以內的完數總共有%d個'%count)

運行演示:

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章