天天看點

Python3 (基礎練習) 一個數如果恰好等于它的因子之和,這個數就稱為“完數“。求1000以内的完數

一個數如果恰好等于它的因子之和,這個數就稱為"完數"。例如6=1+2+3.程式設計找出1000以内的所有完數。

因數是指一個數a能夠整除的數。隻有數a本身不算。而質因數則也不包括1

for num in range(2,1000):
    l = []
    # 内圈循環負責找到num的所有因數,把他們放在l清單,然後判斷因數相加(清單内數的和)是否等于num本身,是則輸出
    for i in range(1,num):
        if(num%i==0):
            l.append(i)
    if(sum(l)==num):
        print(num)
           

答案:

6
28
496