根据完全数(Perfect Number)的定义
一个数的所有真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身
#UTF-8
for i in range(1, 1001):
temp = 0
for j in range(1, i):
if i % j == 0 and i != j:
#在两数不等的前提下,如果两数相除能除尽,即余数为零,则是因子
temp += j
if i == temp:
print(i)
这是一个考虑逻辑的问题,想清楚了其实不难。
网友评论