Ayuda numeros perfectos (python)
Publicado por Francisco (3 intervenciones) el 05/04/2011 05:55:56
Necesito ayuda con un scrip que encuentre los primeros 4 numeros perfectos.
Valora esta pregunta


0
#FUNCION
def perfecto(x):
i,suma,k,j=1,0,1,2
l=[]
while(i<x): #indica cuantos numeros perfectos se desean encontrar
while(j<j+1): #ciclo que corre infinitamente
k=1
while (k<j): # se encuentran los numeros divisores del numero j y se suman
if(j%k==0):
suma=suma+k
k=k+1
if(suma==j): #si la suma es igual a j, j se añade en una fila.
l.append(j)
i=i+1
j=j+1
return(l) #regresa la fila con los numeros perfectos
#PROGRAMA PRINCIPAL
print('NUMEROS PERFECTOS')
x=int(input('cuantos numeros perfectos deseas encontrar:'))
print('los numeros perfectos son:',perfecto(x))
#! /usr/bin/python
def is_perfect(n):
sumatorio = 0
for i in range(1, n):
if n % i == 0:
sumatorio += i
return sumatorio == n
array = []
punto_partida = 1
while len(array) < 4:
if is_perfect(punto_partida):
array.append(punto_partida)
punto_partida += 1
print(array)