Programming
T03-004-02 - Excepciones: delegar mediante throws
Enunciado
Modifica el ejercicio anterior para que pida números hasta que el número insertado en la entrada sea un número entero.
Debes hacer uso de la misma excepción que anteriormente y en el interior del bloque que maneja la excepción, incluir el código siguiente:
System.out.println("Debe introducir un numero entero:");
esEntero = false;
sc.nextLine(); // elimina la entrada anterior
Solución
import java.util.Scanner;
import java.util.InputMismatchException;
public class HastaEnteroExcepcion {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int miCalificacion = 0;
boolean esEntero;
do {
System.out.println("Dime la nota que me corresponde:");
try {
miCalificacion = sc.nextInt();
esEntero = true;
} catch (InputMismatchException ime) {
System.out.println("Debe introducir un numero entero:");
esEntero = false;
sc.nextLine();
}
} while (!esEntero);
System.out.println("Mi nota en PROGRAMACION es: " + miCalificacion);
}
}
Input
10.5 No es un número 6,3 8
10.5 No es un número 2.5 6,3 7
Output
Dime la nota que me corresponde: Debe introducir un numero entero: Dime la nota que me corresponde: Debe introducir un numero entero: Dime la nota que me corresponde: Debe introducir un numero entero: Dime la nota que me corresponde: Mi nota en PROGRAMACION es: 8
Dime la nota que me corresponde: Debe introducir un numero entero: Dime la nota que me corresponde: Debe introducir un numero entero: Dime la nota que me corresponde: Debe introducir un numero entero: Dime la nota que me corresponde: Debe introducir un numero entero: Dime la nota que me corresponde: Mi nota en PROGRAMACION es: 7

