elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


  Mostrar Mensajes
Páginas: 1 [2]
11  Programación / Scripting / Problema de Memory Error Python en: 24 Febrero 2012, 00:32 am
Este algoritmo lo que hace es calcular un numero primo con minimo 20 cifras, se que funciona bien con numeros pequeños pero cuando intento 20 cifras me salta memory error

Código
  1.  
  2. #!/usr/bin/env python
  3.  
  4. from math import sqrt
  5.  
  6. # Busqueda de primos (true->primo || false->compuesto)
  7. def primo (numero):
  8.    lista_p = []
  9.    max = int(sqrt(numero))
  10.  
  11.    # creo la lista de primos
  12.    for i in range(2,max):
  13.        if(primo_aux(i,lista_p)):
  14.            lista_p.append(i)
  15.  
  16.    return primo_aux(numero, lista_p)
  17.  
  18. # Busqueda con division entre los primos en (2, sqrt(n)) (Auxiliar)
  19. def primo_aux (numero, primos_m):
  20.    for i in primos_m:
  21.        if ((numero%i) == 0):
  22.            return False # no es primo por division exacta entre un primo
  23.    return True
  24.  
  25.  
  26. def main():
  27.  
  28.    n = long(10000000000000000000) #Numero de 20 cifras
  29.  
  30.    while True:
  31.        print "Entra"
  32.        if(primo(n)):
  33.            break;
  34.        n += 1
  35.  
  36.    print "Primo encontrado: %n", n
  37.  
  38. if __name__ == "__main__":
  39.    main()
  40.  

Cualquier ayuda es apreciada.
Páginas: 1 [2]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines