Autor Tema: CU00657B Ejemplo pedir datos por consola en Java con Scanner y analizar entrada  (Leído 3948 veces)

jupertivo

  • Sin experiencia
  • *
  • Mensajes: 29
  • Aprendiendo y más allá
    • Ver Perfil
Os adjunto el código del ejercicio propuesto. A mi me funciona. Lo que pregunto es si la forma elegida de resolverlo es la más adecuada, o a estas alturas del curso tendría que haberlo hecho de otra forma más eficiente o adecuada.

Gracias por todo.

Código: [Seleccionar]
public class TestPrograma2 {
    public static void main (String [ ] args) {
        Scanner entradaEscaner;
        String entradaTeclado = "";
        int longitudTexto = 0;
        String primeraLetra = "";
               
        System.out.println ("");
        System.out.println ("Empezamos el programa");
        System.out.println ("Por favor introduzca una cadena por teclado:");
        entradaEscaner = new Scanner (System.in); //Creación de un objeto Scanner
        entradaTeclado = entradaEscaner.nextLine (); //Invocamos un método sobre un objeto Scanner
        System.out.println ("");
        System.out.println ("Entrada recibida por teclado es: \"" + entradaTeclado + "\"");
       
        longitudTexto = entradaTeclado.length();
        primeraLetra = entradaTeclado.substring (0,1);
       
        switch (primeraLetra) {
            case "a":
                if (longitudTexto < 5) {
                    System.out.println ("La cadena introducida tiene menos de 5 caracteres y empieza por la letra 'a'.");}
                else if (longitudTexto >= 5 && longitudTexto <= 15) {
                    System.out.println ("La cadena introducida tiene entre 5 y 15 caracteres y empieza por la letra 'a'.");}
                else {
                    System.out.println ("La cadena introducida tiene más de 15 caracteres y empieza por la letra 'a'.");}
                break;
            default:
                if (longitudTexto < 5) {
                    System.out.println ("La cadena introducida tiene menos de 5 caracteres y no empieza por la letra 'a'.");}
                else if (longitudTexto >= 5 && longitudTexto <= 15) {
                    System.out.println ("La cadena introducida tiene entre 5 y 15 caracteres y no empieza por la letra 'a'.");}
                else {
                    System.out.println ("La cadena introducida tiene más de 15 caracteres y no empieza por la letra 'a'.");}
                break;
        }
     } //Cierre del main
} //Cierre de la clase
« Última modificación: 26 de Marzo 2015, 08:13 por Alex Rodríguez »
Descubrir y enmendar los pequeños errores ayuda a no cometer los grandes

Príncipe_Azul

  • Principiante
  • **
  • Mensajes: 71
    • Ver Perfil
    • Foro ArgentinaIRC - Ayuda de Programación General, IRC y mIRC Scripting!
Re:CU00657B. Resolución ejercicio
« Respuesta #1 en: 25 de Marzo 2015, 23:58 »
Hola, una pequeña mejora es en vez de usar esto:

Código: [Seleccionar]
        System.out.println ("");
        System.out.println ("Empezamos el programa");

Es mejor usar esto:

Código: [Seleccionar]
        System.out.println ("\nEmpezamos el programa");
De esta manera en vez de usar dos instrucciones, usas una sola.

Saludos!!

Mastermind

  • Experto
  • *****
  • Mensajes: 536
    • Ver Perfil
Hola jupertivo hay una cosa que podrías mejorar y es no repetir código. Al hacer el switch compruebas si la letra inicial es a y pones un código y si la letra no es a repites ese código. Repetir código no es bueno, deberías o bien crear un método de forma que no repitas el código sino simplemente llamar al método, o bien hacerlo de una forma tal que no se repita el código por ejemplo como lo hacen en https://www.aprenderaprogramar.com/foros/index.php?topic=1275.msg6951#msg6951

Saludos  :D

jupertivo

  • Sin experiencia
  • *
  • Mensajes: 29
  • Aprendiendo y más allá
    • Ver Perfil
Hola. Gracias por vuestras sugerencias. Tomo nota y, hasta la próxima. :)
Descubrir y enmendar los pequeños errores ayuda a no cometer los grandes

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".