一、题目概述
一个数如果恰好等于它的因子之和,这个数就称为“完数”,例如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)
三、运行演示
人之行善,利人者公,公则为真;利己者私,私则为假。——《了凡四训·积善之方》