python 1000以内の完全数を求める
642 ワード
題目:1000以内の完全な数を求める(もし1つの数がちょうどその因子の和に等しいならば、この数を“完全な数”と称して、また完璧な数あるいは完備な数と称します.例えば:第1の完全な数は6で、それは約数の1、2、3、6があって、それ自身の6を除いて、残りの3つの数は加算して、1+2+3=6.第2の完全な数は28で、それは約数の1、2、4、14、28があって、それ自身の28を除いて、残りの5つの数は加算して、1+2+4+14=28.)
問題解決の考え方: forループは、それぞれ1000以内のすべての整数をリストします. は、それぞれの整数を彼より小さい整数で割って、整除するとその整数因子として記録し、すべての因子を加算して和を求め、和を求めた後、この整数と等しいかどうかを判断し、等しければその整数は完全数である. は、1000以内の完全な数を格納するために空のリストを定義する.
解題コード:
印刷結果:[6,28,496]
問題解決の考え方:
解題コード:
L=[]
for i in range(1,1001):
k=0
for j in range(1,i):
if (i%j==0):
k+=j
if i==k:
L.append(i)
print(L)
印刷結果:[6,28,496]