求10000以?xún)?nèi)完美數(shù)
說(shuō)明:完美數(shù)又稱(chēng)為完全數(shù)或完備數(shù),它的所有的真因子(即除了自身以外的因子)的和(即因子函數(shù))恰好等于它本身。
例如:6()和28()就是完美數(shù)。完美數(shù)有很多神奇的特性,有興趣的可以自行了解扣讼。
"""
10000以?xún)?nèi)完美數(shù)
說(shuō)明:完美數(shù)又稱(chēng)為完全數(shù)或完備數(shù),它的所有的真因子(即除了自身以外的因子)的和(即因子函數(shù))恰好等于它本身缨叫。
例如:6($6=1+2+3$)和28($28=1+2+4+7+14$)就是完美數(shù)椭符。完美數(shù)有很多神奇的特性,有興趣的可以自行了解耻姥。
"""
# 設(shè)置一個(gè)空列表用于接收符合要求的完美數(shù)
wanmei = []
# 遍歷1到10000的所有數(shù)字
for i in range(1, 10000):
# 設(shè)置一個(gè)空列表用于接收數(shù)字i的所有的整除因子
list_eve = []
for j in range(1, i + 1):
if i % j == 0:
list_eve.append(j)
# 所有整除因子去除數(shù)字i本身销钝,list_eve列表變?yōu)檎嬉蜃恿斜? list_eve.remove(i)
temp_he = 0
for h in list_eve:
temp_he += h
# 真因子列表各項(xiàng)之和等于數(shù)字i本身,那么i為完美數(shù)咏闪,將i加入完美數(shù)列表
if temp_he == i:
wanmei.append(i)
# 打印結(jié)果
print(wanmei)