En el programa que vamos a realizar vamos a hacer que el usuario introduzca un número utilizando la clase Scanner y a partir de ese número el programa determinará si es primo o no.
Vamos a ver el código:
import java.util.Scanner; public class NumeroPrimo{ //Método que comprueba si un número es o no primo public static void comprobarNumero(int num){ if(num == 2){ //Si el número es 2 es primo System.out.println("El número " + num + " es primo"); }else if (num < 2 || num % 2 == 0 ){ //si el número es menor que 2 o el número es divisible //por dos, entonces no es primo System.out.println("El número " + num + " no es primo"); }else { for(int i = 2; i < num; i++){ //Si el número es divisible por cualquier número menor //que el propio número (a partir de 2) entonces no es primo if(num % i == 0){ System.out.println("El número " + num + " no es primo"); //Si la condición es cierta se sale del programa System.exit(0); } } //Si lo anterior es falso entonces el número es primo System.out.println("El número " + num + " es primo"); } } public static void main(String[] args) { Scanner teclado = new Scanner(System.in); System.out.print("Esccriba un número: "); int numero = teclado.nextInt(); comprobarNumero(numero); } }
El código viene comentado, pero si tenéis cualquier duda no dudéis en dejarla por comentario.
No puede haber break por el verdadero y el falso del if. No tiene sentido un for en ese caso
ResponderEliminarTienes razón, he cambiado el código. Muchas gracias por comentar
Eliminar