Skip to content
marzo 28, 2012 / dracux

Matemática y Programación IV: Primos por Rangos.

Bueno, la idea de poner si un número es primo o no es interesante, pero que pasa si quiero conocer cuales son primos dentro de un rango?

Modificando un poco el programa que ya teníamos podemos obtener algo que funciona sin demasiadas pretensiones.

from datetime import *

nro1=input ("Ingrese nro. desde:")
nro2=input ("Ingrese nro. hasta:")
for nro in range(nro1,nro2+1):
    flag=0
    print "Hora de inicio: "+str(datetime.today())
    if(nro%2==0 and nro!=2):
        flag=1
    else:
        nroinicial=(nro+1)/2
    if (nro==1): #1 no es primo
        flag=1

    if (flag==0):
        if(nro!=2): #2 es primo
            for j in range (3,nroinicial+1,2):
                if(nro%j==0):
                    print "Nro. "+str(nro)+" is divisible by "+str(j)+""
                    flag=1
                    break
    if (flag==0):
        print "El nro. "+str(nro)+ " es primo."
    else:
        print "El nro. "+str(nro)+ " no es primo."
    print "Hora de fin: "+str(datetime.today())

Si no nos ponemos pretenciosos, eso funciona, es el mismo programa de antes pero con un loop para ver el rango entero.

Podría habilitar un “Resumen” de cuales son los primos de ese rango, o solo mostrar los primos, pero dejemoslo para el próximo capítulo, calculo que voy a tener que reescribir un poco.

Anuncios

2 comentarios

Dejar un comentario
  1. Aitor González / Mar 28 2012 4:40 pm

    He intentado preguntar a mis profesores el tema de manejar números de cientos y miles de cifras con java y no me han sabido responder. Si indago y encuentro algo te digo. Un saludo.

  2. dracux / Mar 28 2012 5:49 pm

    El tema es que Python es como más sencillo a priori porque se encarga el mismo de hacer las conversiones necesarias.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: