Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Duda] Verificando si un número es par o impar

Este es mi código para el ejercicio y aunque funciona bien, me gustaría saber cómo agregarle una validación sencilla antes del condicional para que el usuario ingrese un número y no otro tipo de dato, como una letra o un símbolo, por ejemplo. Gracias.

import java.util.Scanner;

public class Ejercicio {
    public static void main(String[] args){
         
        Scanner teclado = new Scanner(System.in);
        System.out.println("Ingrese un número");
        int numero = teclado.nextInt();
            
            if (numero % 2 == 0){
                System.out.println(numero + " es par");
            } else {
                System.out.println(numero + " es impar");
            }

            teclado.close();
        
    }
}
1 respuesta

Hola Mónica, espero que estés bien

¡Qué bueno que tu código ya está funcionando bien! Para agregar una validación que asegure que el usuario ingrese un número y no otro tipo de dato, puedes utilizar un bucle while junto con el método hasNextInt() del objeto Scanner. Este método verifica si el siguiente token de entrada es un entero. Aquí te dejo un ejemplo de cómo podrías implementar esto:

import java.util.Scanner;

public class Ejercicio {
    public static void main(String[] args){
         
        Scanner teclado = new Scanner(System.in);
        System.out.println("Ingrese un número");

        // Validación para asegurarse de que el usuario ingrese un número
        while (!teclado.hasNextInt()) {
            System.out.println("Eso no es un número válido. Por favor, ingrese un número:");
            teclado.next(); // Descartar la entrada no válida
        }

        int numero = teclado.nextInt();
            
        if (numero % 2 == 0){
            System.out.println(numero + " es par");
        } else {
            System.out.println(numero + " es impar");
        }

        teclado.close();
    }
}

Con este cambio, el programa seguirá pidiendo al usuario que ingrese un número hasta que se proporcione una entrada válida. Espero que esta solución te sea útil.

¡Espero haber ayudado y buenos estudios!