题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。
程序分析:请参照程序Python 练习实例14。
程序源代码:
实例
#!/usr/bin/python# -*- coding: UTF-8 -*-fromsysimportstdoutforjinrange(2,1001): k = [] n = -1 s = j foriinrange(1,j): ifj % i == 0: n += 1 s -= i k.append(i) ifs == 0: print(j) foriinrange(n): stdout.write(str(k[i])) stdout.write('') print(k[n])
以上实例输出结果为:
6
123
28
124714
496
1248163162124248