Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - camaleonh

#11
Scripting / Problema de Memory Error Python
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 (python) [Seleccionar]


#!/usr/bin/env python

from math import sqrt

# Busqueda de primos (true->primo || false->compuesto)
def primo (numero):
    lista_p = []
    max = int(sqrt(numero))
   
    # creo la lista de primos
    for i in range(2,max):
        if(primo_aux(i,lista_p)):
            lista_p.append(i)
       
    return primo_aux(numero, lista_p)
   
# Busqueda con division entre los primos en (2, sqrt(n)) (Auxiliar)
def primo_aux (numero, primos_m):
    for i in primos_m:
        if ((numero%i) == 0):
            return False # no es primo por division exacta entre un primo
    return True
       

def main():
   
    n = long(10000000000000000000) #Numero de 20 cifras
   
    while True:
        print "Entra"
        if(primo(n)):
            break;
        n += 1

    print "Primo encontrado: %n", n

if __name__ == "__main__":
    main()


Cualquier ayuda es apreciada.