Ejercicio de entrada desde teclado (I)

Más ejercicios sobre entrada y salida de datos.

Ejercicio

Escribe un método, de nombre obtener Entero, que solicite al usuario un valor entero. El método no dejará de solicitarlo hasta que el método introduzca un valor entero que se encuentre, además dentro del rango correspondiente a este tipo de datos.

Como puede hacerse

El método debe crear un flujo de lectura a partir del objeto estático in de la clase System. Se utiliza la clase InputStreamReader para que el flujo permita la lectura directa de caracteres Unicode. Se utiliza, además, la clase BufferedReader para dotar al flujo de un buffer y permitir la lectura de líneas completa. El método recibe un mensaje que es mostrado por pantalla para invitar al usuario a que introduzca un valor entero. El método es leído con ayuda del método readLine() y se trata de convertir al tipo de datos entero, utilizando el método parseInt(), suministrado por la clase Integer. Y es recomendable tratar las correspondientes excepciones.

Parámetros

Mensaje para solicitar un número entero al usuario (“Introduzca un entero”)

Valor de retorno

Valor entero introducido por el usuario.

Solución

public int obtenerEntero(String mensaje) {
        BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));
        int entero = 0;
        boolean correcto = true;

        do {
            System.out.println(mensaje);
            try {
                entero = Integer.parseInt(teclado.readLine());
                correcto = true;
            } catch (IOException ioE) {
                System.out.println(“Error de entrarada/salida”);
                System.out.println(“Error: ” + ioE.toString());
                correcto = false;
            }
        } while (!correcto);

        return entero;
    }

Anuncios

Un comentario sobre “Ejercicio de entrada desde teclado (I)

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s