Autor Tema: Pedir datos por consola (teclado) en java. Ejercicio CU00657B  (Leído 1383 veces)

Juanfran.ib

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 9
    • Ver Perfil
Dejo mi solución para este ejercicio.

He dudado en la segunda parte del ejercicio de si podía resolverlo usando el método
equals (Object a, Object b) para poder comparar la subcadena extraida del texto introducido con el método subestring. No se me ocurría otra forma de resolverlo, aunque luego he leído en el foro otras soluciones con otros métodos como startsWith().

Mi solución diferencia entre "a" y "A" ya que he entendido que el ejercicio pedía diferenciar entre la mayúscula y la minúscula.

Citar
Crea una clase con un método main que pida una entrada de teclado y usando condicionales, el método length de la clase String y el método substring de la clase String, muestre un mensaje indicando:

a) Si la cadena introducida tiene menos de 5 caracteres, entre 5 y 15 caracteres o más de 15 caracteres.

b) Si la cadena introducida comienza por la letra a.

Ejemplo: se pide la entrada y el usuario introduce “vereda”. Por pantalla se debe mostrar: “La cadena introducida tiene entre 5 y 15 caracteres y no comienza por a”.

El código propuesto es el siguiente:
Código: [Seleccionar]
/**
 * ClaseMain
 * Clase principal iniciadora del programa
 * Pide una entrada de teclado y usa condicionales, el método length y el método substring de la clase String
 * @author (Juanfran.ib)
 * @version (22/07/2023)
 */

import java.util.Scanner;//Importación del código de la clase Scanner desde la biblioteca Java
import java.util.Objects;//Importación del código de la clase Objects desde la biblioteca Java.

//Código de nuestra clase principal
public class ClaseMain
{
    public static void main (String [ ] args) {

        System.out.println ("Empezamos el programa");

        System.out.println ("Por favor introduzca una cadena por teclado:");

        String entradaTeclado = "";

        Scanner 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 ("Entrada recibida por teclado es: \"" + entradaTeclado +"\"");
       
        int longitud = entradaTeclado.length();
        String subcadena = entradaTeclado.substring(0,1);
       
        if (longitud < 5){
            System.out.println ("El texto introducido tiene menos de cinco caracteres.");
        }else if(longitud > 15) {
            System.out.println ("El texto tiene más de 15 caracteres.");
        }else{
            System.out.println ("El texto introducido tiene entre cinco y quince caracteres.");
        }
       
        if (Objects.equals("a",subcadena)){
            System.out.println ("El texto introducido empieza por la letra "+ subcadena);
        }else{
            System.out.println ("El texto introducido no empieza con la letra a, empieza por la letra "+ subcadena);
        }   
    }//cierre del main
}//Cierre de la clase

Kabuto

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 988
    • Ver Perfil
Re: Pedir datos por consola (teclado) en java. Ejercicio CU00657B
« Respuesta #1 en: 22 de Julio 2023, 23:31 »
Hola.
La solución es correcta.

También podríamos haber comparado directamente un String con otro, sin tener que importar la clase Objects

Citar
        if (subcadena.equals("a")){
            System.out.println ("El texto introducido empieza por la letra "+ subcadena);
        }else{
            System.out.println ("El texto introducido no empieza con la letra a, empieza por la letra "+ subcadena);
        }   


Un saludo.
NO respondo dudas por mensaje privado
Publicando vuestras dudas en el foro público conseguimos:
- Que más gente aporte respuestas mejores o complementarias.
- Que otras personas puedan aprender de vuestras dudas.

Mejor en PÚBLICO que en privado. Gracias

Juanfran.ib

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 9
    • Ver Perfil
Re: Pedir datos por consola (teclado) en java. Ejercicio CU00657B
« Respuesta #2 en: 23 de Julio 2023, 16:08 »
Muchas gracias por la respuesta.

 

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".