Java - eclipse java - saber si un numero es primo

   
Vista:

eclipse java - saber si un numero es primo

Publicado por lorena (2 intervenciones) el 21/03/2014 23:56:11
y tambien porfa ayuda para programar al sitema para que me diga si u numero es primo o no
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

eclipse java - saber si un numero es primo

Publicado por xve (262 intervenciones) el 22/03/2014 20:24:06
Mira este código que he encontrado por internet...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import java.util.*; // el import lo utilisamos para importar lo que es las utilidades de escanner y demas 
 
public class primo {
 
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
        int num; //declaramos nuestras variables en este caso enteras
        int divisor=2;
        boolean bandera=false; // una boleana para usa bandera 
 
        Scanner in = new Scanner (System.in) ; //se declarra el escaner en ""in"" entrada 
 
        System.out.println("ingrese el numero: " ) ; // la impresion 
        num=in.nextInt(); // la lectura del numero capturado
 
        while(!bandera && divisor<num) //ponemos el while con su condicion en este caso si bandera 
        {
            if (num%divisor==0) // un if en el cual se pregunta si el residuo de la divicion es o 
                bandera=true; // si lo es no es primo osea que se sale 
            else
                divisor++; //igual si el divisor llego al numero q se capturo este sera primo 
        }
 
        if (bandera) //se pregunta afuera y listo 
            System.out.println("el numero no es primo" ) ;
        else
            System.out.println("el numero si es primo" ) ;
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eclipse java - saber si un numero es primo

Publicado por UnoPorAhi (128 intervenciones) el 22/03/2014 22:10:29
Buenas,

Solo comentar que sería mucho más óptimo el código poniendo el for así:

1
2
3
4
5
6
7
8
int resto = 0;
for(; divisor <= num/2; divisor++) {
	resto = num % divisor;
	if(resto == 0) {
		bandera = false;
		break;
	}
}

No tiene sentido evaluar los valores superiores a la mitad del número evaluado, ya que nunca serán divisores válidos.


Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eclipse java - saber si un numero es primo

Publicado por NOX 909 (1 intervención) el 01/07/2015 22:48:31
No es necesario incluir variables booleanas... en lugar de usar condiciones dentro de la iteracion simplemente podrias usar la condicion que a todos nos interesa: si el numero es divisible entre el contador. El codigo principal quedaria resumido a menos de 103bytes (quitando el scanner y reemplazando n por un valor predefinido). Espero que mi aporte sea util :) gracias.

1
2
3
4
5
6
7
8
9
10
11
import java.util.Scanner;
public class primo{
  public static void main(String[] args){
    Scanner in=new Scanner(System.in);
    System.out.println("Introduce numero primo: ");
    int i=2, n=in.nextInt();
    while(n%i!=0)i++;
    if (i==n) System.out.println("Primo");
    else System.out.println("NO Primo");
  }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar