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