完数

题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程
       找出10000以内的所有完数。

代码:

完数
def func(a):
    b=[]
    for i in range(1,int(a/2)+1):
        if a%i==0:
            b.append(i)
    sum=0
    for i in range(len(b)):
        sum=sum+b[i]
    if(sum==a):
        print(a)
        print(b)
if __name__ == "__main__":   
    for i in range(1,10000):
        func(i)
                
            
            
完数

运行结果:

完数
6
[1, 2, 3]
28
[1, 2, 4, 7, 14]
496
[1, 2, 4, 8, 16, 31, 62, 124, 248]
8128
[1, 2, 4, 8, 16, 32, 64, 127, 254, 508, 1016, 2032, 4064]
完数

完数

上一篇:OpenStack tokens id获取测试


下一篇:NHibernate使用ICriteria分页并返回总记录条数