Saber si un número es primo o no en Java.

En primer lugar decir que, los números primos son aquellos números que sólo pueden ser divididos por ellos mismos o entre 1 para dar una solución exacta. Esto quiere decir que si un número dividido por otro que no sea el mismo o 1 que el resto sea 0, se dice que ese número es primo.
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.

2 comentarios:

  1. No puede haber break por el verdadero y el falso del if. No tiene sentido un for en ese caso

    ResponderEliminar
    Respuestas
    1. Tienes razón, he cambiado el código. Muchas gracias por comentar

      Eliminar

Privacy Policy for Broma Detector de Mentiras con Huella

Privacy Policy Privacy Policy Broma detector de mentiras con huella app as ...