首页 > 代码库 > python练习程序(c100经典例19)

python练习程序(c100经典例19)

题目:

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

def foo(a):    sra=a;    lis=[1];    while 1:        for i in range(2,a+1):            if a%i==0:                lis.append(i)                a=a/i;                break;        if a==1:            break;    l=len(lis);    sum=0;    for i in range(0,l):        sum=sum+lis[i];    if sum==sra:        print srafor i in range(1,1000):    foo(i)        

 

python练习程序(c100经典例19)