Saber cuando un numero es o no primo

      • 51
      • mensajes
      • miembro desde
      • 11/06/05
    #1 Saber cuando un numero es o no primo

    Buenas!

    Alguien me podria ayudar?

    Necesito un diagrama de flujo que resuelva cuando un numero es primo o no!....

    Salu2 y espero sus respuestas!

  1. ¿Este tema te pareció interesante? Compártelo!

    ¿No es lo que buscabas? Intenta buscar un tema similar

    31 comentarios / 519665 Visitas

      • 32,141
      • mensajes
      • miembro desde
      • 01/04/07
    22/06/2007
    #2 Re: Saber cuando un numero es o no primo

    Dado el numero N que queremos saber si es primo.

    Inicia un contador descendente C.
    C = N -1

    Si C <= 1 ------> Sale e indica que es primo.

    X = N % C (X es el residuo de la division)

    Si X > 0 ------> Sale e indica que no es primo.

    C = C - 1 y vuelve donde verifica si C <= 1

    Espero que se entienda porque no se poner dibujos aca y hacer un diagrama de flujo con caracteres es de terror.

    Suerte !

      • 24
      • mensajes
      • miembro desde
      • 02/03/07
    22/06/2007
    #3 Re: Saber cuando un numero es o no primo

    En una clase de matemáticas me enseñaron (y se puede comprobar) que un número es divisible entre 2, divisible entre 3, divisible entre 5, o primo.

    Con esta regla se puede sacar un algoritmo muy sencillo para esto (los guiones bajos son para hacer sangría nomás, es que no me pone los espacios al principio de la linea):

    Código:
    inicio
    leer n
    si (n % 2 <> 0) entonces
    _si (n % 3 <> 0) entonces
    __si (n % 5 <> 0) entonces
    ___escribir "'n' es número primo"
    __fin si
    _fin si
    fin si
    escribir "'n' no es número primo".
    fin

    y de hecho podrías ponerlo en una sola sentencia if en caso de que solamente quieras determinar si es primo o no. Por ejemplo en C/C++:

    Código:
    if ( (n%2) || (n%3) || (n%5) )
     cout<<"El número no es primo"
    else
     cout<<"El número no es primo";
    a katty_gris le gusta esto.
      • 32,141
      • mensajes
      • miembro desde
      • 01/04/07
    22/06/2007
    #4 Re: Saber cuando un numero es o no primo
    Cita Escrito por Masiosare Ver mensaje
    En una clase de matemáticas me enseñaron (y se puede comprobar) que un número es divisible entre 2, divisible entre 3, divisible entre 5, o primo.
    Ese dia debo haber faltado. Muy interesante, no lo sabia, por eso le di una solucion "brute force". Tampoco lo habia pensado nunca. No se en que pueden aplicarse los numeros primos.
      • 51
      • mensajes
      • miembro desde
      • 11/06/05
    22/06/2007
    #5 Re: Saber cuando un numero es o no primo

    Gracias, a todos por sus respuestas ahora lo pruebo en el DFD y les aviso!

    Salu2

      • 1,653
      • mensajes
      • miembro desde
      • 19/05/05
    22/06/2007
    #6 Re: Saber cuando un numero es o no primo
    Cita Escrito por Masiosare Ver mensaje
    En una clase de matemáticas me enseñaron (y se puede comprobar) que un número es divisible entre 2, divisible entre 3, divisible entre 5, o primo.
    Me gustaria ver la demostracion de esa afirmacion.

    Porque con ese criterio, 7^2 (7 al cuadrado = 49) seria primo, ya que no es divisible entre 2, ni entre 3, ni entre 5.

    A la conclusion que llegamos con tu afirmacion, es que 49 solo es divisible entre 1 y entre 49, a pesar de ser el cuadrado de 7

    Cita Escrito por Langdom Ver mensaje
    Dado el numero N que queremos saber si es primo.

    Inicia un contador descendente C.
    C = N -1

    Si C <= 1 ------> Sale e indica que es primo.

    X = N % C (X es el residuo de la division)

    Si X > 0 ------> Sale e indica que no es primo.

    C = C - 1 y vuelve donde verifica si C <= 1

    Espero que se entienda porque no se poner dibujos aca y hacer un diagrama de flujo con caracteres es de terror.

    Suerte !
    Exacto, es mas, en la ultima parte podemos hacer:

    C = C - 1 y vuelve donde verifica si C <= sqrt N (sqrt = Raiz cuadrada)

    Verifiquenlo, pero creo que asi andaria aun mas rapido, ya que verificaria solo la mitad de los numeros.

    Cita Escrito por sk8ter_angel Ver mensaje
    Gracias, a todos por sus respuestas ahora lo pruebo en el DFD y les aviso!

    Salu2
    Disculpen mi ignorancia, que es el DFD?
      • 51
      • mensajes
      • miembro desde
      • 11/06/05
    23/06/2007
    #7 Re: Saber cuando un numero es o no primo
    Cita Escrito por Fedelosa Ver mensaje
    Disculpen mi ignorancia, que es el DFD?
    En Ingles data flow diagram para nosotros Diagrama de Flujo de Datos

    Es un programa que te ayuda a graficar los diagramas de flujo!

    Salu2
      • 32,141
      • mensajes
      • miembro desde
      • 01/04/07
    23/06/2007
    #8 Re: Saber cuando un numero es o no primo
    Cita Escrito por Masiosare Ver mensaje
    En una clase de matemáticas me enseñaron (y se puede comprobar) que un número es divisible entre 2, divisible entre 3, divisible entre 5, o primo.

    Con esta regla se puede sacar un algoritmo muy sencillo para esto (los guiones bajos son para hacer sangría nomás, es que no me pone los espacios al principio de la linea):

    Código:
    inicio
    leer n
    si (n % 2 <> 0) entonces
    _si (n % 3 <> 0) entonces
    __si (n % 5 <> 0) entonces
    ___escribir "'n' es número primo"
    __fin si
    _fin si
    fin si
    escribir "'n' no es número primo".
    fin

    y de hecho podrías ponerlo en una sola sentencia if en caso de que solamente quieras determinar si es primo o no. Por ejemplo en C/C++:

    Código:
    if ( (n%2) || (n%3) || (n%5) )
     cout<<"El número no es primo"
    else
     cout<<"El número no es primo";
    Hay una falla en esto y recien la veo. El 2 y el 3 son numeros primos y el algoritmo lo das como que no son.
      • 1,653
      • mensajes
      • miembro desde
      • 19/05/05
    23/06/2007
    #9 Re: Saber cuando un numero es o no primo
    Cita Escrito por Langdom Ver mensaje
    Hay una falla en esto y recien la veo. El 2 y el 3 son numeros primos y el algoritmo lo das como que no son.
    Hay varias fallas, mira mi post mas arriba.

    Saludos

    Gracias por desasnarme en cuanto al DFD
      • 32,141
      • mensajes
      • miembro desde
      • 01/04/07
    23/06/2007
    #10 Re: Saber cuando un numero es o no primo

    Si, despues de postear lo vi.
    Lo que quedaria mejor seria

    Código:
    C = sqrt N (siendo C un entero)
    
    Si C <= 1 ------> Sale e indica que es primo.
    
    X = N % C (X es el residuo de la division)
    
    Si X > 0 ------> Sale e indica que no es primo.
    
    C = C - 1 y vuelve donde verifica si C <= 1
123 ... Último
IR ARRIBA