题目概述:
一个数如果恰好等于它的因子之和,这个数就称为“完数”,例如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)