Python实现寻找完美数问题

寻找完美数

何为完美数?

完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的因子之和,则称该数为“完全数”。第一个完全数是6,第二个完全数是28,第三个完全数是496,后面的完全数还有8128、33550336等等。

6 = 1+2+3
28 = 1+2+4+7+14

实现

// 寻找1000以内的完美数
for i in range(1,1000):
	num = 0
	for k in range(1,i):
		if i%k == 0:
			num += k
	if i == num:
		print i

你可能感兴趣的:(Python)