InicioCiencia EducacionObtener números primos Python

Obtener números primos Python

Ciencia Educacion8/24/2014
Les traigo un script muy simple para obtener los números primos hasta cierto límite Python .
Obtener números primos Python
Simplemente guardan el script en un archivo llamado ejemplo.py y desde la consola de windows o linux, desde el directorio donde hayan guardado el archivo corren el comando "python ejemplo.py"
[color=#000000][code][/color]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
def isprime(n):
    '''chequear si un entero es primo'''
    # chequear que la entrada sea un entero positivo
    n = abs(int(n))
    # 0 y 1 no son primos
    if n < 2:
        return False
    # 2 es el unico primo par
    if n == 2: 
        return True    
    # El resto de pares no son primos
    if not n & 1: 
        return False
    #El rango comienza en 3 y solo necesita subir hasta la raiz cuadrada de n 
    # para todos los impares
    for x in range(3, int(n**0.5)+1, 2):
        if n % x == 0:
            return False
    return True

#Declaramos la lista para guardar el resultado
primos = []
try:
limit = int(raw_input('Ingrese un número: '))
except ValueError:
print "Oops!  No es un número valido.."

#Corremos un  loop para guardar los resultados en primos[]
i = 1
if limit > 0:
while i <= limit:
check = isprime(i)
if check == True:
primos.append(i)
elif check == False:
pass
i = i+1

#Obtenemos el primos mas grande
mayor = primos[len(primos)-1]
print 'Se encontraron %d numeros primos' % (len(primos))
print 'El mas alto es %d y contiene %d digitos' %(mayor,len(str(mayor)))

print_all = raw_input('Imprimir resultados (s/n)')
if print_all == str('s'):
i = 1
for x in primos:
print i,'->',x
i=i+1
elif print_all == str('n'):
pass
else:
pass

[/code]
Los resultados son algo así:
root@vdebian-gru:/home/sms# python primos.py
Ingrese un número: 13
Se encontraron 5 numeros primos
El mas alto es 13 y contiene 2 digitos
Imprimir resultados (s/n)s
1 -> 2
2 -> 3
3 -> 5
4 -> 7
5 -> 11


Si quieren ejecutar el código bajen el único archivo del siguiente repositorio:  https://github.com/codigoTaringa/primos  ya que Taringa modifica las identaciones al postear el código.
Datos archivados del Taringa! original
31puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
2visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

c
chauchan🇦🇷
Usuario
Puntos0
Posts23
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.