Autor Tema: Pedir datos en Java por teclado utilizando la clase Scanner System.in CU00657B  (Leído 2302 veces)

cigarzonl

  • Principiante
  • **
  • Mensajes: 52
    • Ver Perfil
    • http://cigarzonl1.eshost.com.ar/pagina.html
Buen dia compañeros:

Acá les dejo mi código realizado cualquier cosa inquietud o colaboracion por favor indicarme. gracias :D

Citar
  EJERCICIO

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


Acá mi codigo :D

Código: [Seleccionar]
import java.util.Scanner;
public class entradaTeclado
{
    public static void main (String [ ] args) {
     String entrada = "";
     String Valora= "";
     String Verificaicon = "";
     Scanner entradaEscaner = new Scanner (System.in);
     entrada = entradaEscaner.nextLine();
      System.out.println ("Buen dia por favor asigna una palabra para comenzar el programa:  ");
    }
    public void Verificaicon (String entrada){
        if (entrada.length() < 5  ) { //Comprobación
           String  Verificaicon = " “y  tiene menos de 5 caracteres  " ;
            String  valora = entrada.substring (0);
           if (valora == "a") {
               System.out.println("La cadena introducida inicia con a"  + Verificaicon );
            }else {
           System.out.println (  "La cadena introducida NO inicia con a  " + Verificaicon) ;
          }
        }
        if (entrada.length() >= 5 && entrada.length() < 15 ) { //Comprobación
            String  Verificaicon =" “y tiene entre  5 y 15 caracteres  " ;
               String  valora = entrada.substring (0);
          if (valora == "a") {
              System.out.println("La cadena introducida inicia con a"  + Verificaicon );
            }else {
           System.out.println (  "La cadena introducida NO inicia con a  " + Verificaicon) ;
          }
        }
        if (entrada.length() > 15 ) { //Comprobación
           String   Verificaicon =" “y  tiene mas de 15 caracteres  " ;
              String  valora = entrada.substring (0);
         if (valora == "a") {
             System.out.println("La cadena introducida inicia con a"  + Verificaicon );
            }else {
           System.out.println (  "La cadena introducida NO inicia con a  " + Verificaicon) ;
          }
        }
    }
}
« Última modificación: 14 de Julio 2016, 14:18 por César Krall »
Gracias
:D

DRANXZ88

  • Avanzado
  • ****
  • Mensajes: 356
    • Ver Perfil
Re:Pedir datos en Java (teclado). (CU00657B)
« Respuesta #1 en: 12 de Julio 2016, 22:31 »
Estaba revisando tu código y no me funcionó, me tiraba error.

He visto que creaste un método dentro del main que no es recomendable me refiero a esto.

Código: [Seleccionar]
public void Verificaicon (String entrada){
Cuando vas a crear un método te conviene crear otra clase. Para después poder crear el objeto en el main para utilizar su método.

Ademas declaras una variable varias veces, te conviene declarar arriba como principal para no declarar cada rato la misma variable.

Intenté hacerle alguno cambio para adaptar con el que vos hiciste pero no anduvo por eso le hice un cambio mas profundo en tu método.

Al final creé otra clase a partir de la que tenías vos y le agregué tu método con alguna modificación y quedó así.

Este seria el método main donde crea el objeto y usa su método pasando un parámetro con el objeto recibe el parámetro para comprobar las palabra.

Código: [Seleccionar]
package pruebacu0057cigarzol;

import java.util.Scanner;

public class PruebaCu0057Cigarzol {

    public static void main(String[] args) {
        VerificarPalabra verificar = new VerificarPalabra();
        String entrada = "";
        String Valora = "";
        String Verificaicon = "";
        System.out.println("Por favor asigna una palabra para comenzar el programa:  ");
        Scanner entradaEscaner = new Scanner(System.in);
        entrada = entradaEscaner.nextLine();
        verificar.verificacionLetra(entrada);
       
    }
   
}

Y esta es la clase que verifica la palabra que le pasaste como parámetro. Observación tu código original no lo borré, solo lo puse como comentario para ver la diferencia.

Código: [Seleccionar]
package pruebacu0057cigarzol;

public class VerificarPalabra {

    public VerificarPalabra() {
    }

    public void verificacionLetra(String entrada) {
        String verificacion = "";
        String valora = "";
        if (entrada.length() < 5) { //Comprobación
            verificacion = "tiene menos de 5 caracteres  ";
            /*valora = entrada.substring(0);
            if (valora == "a") {
                System.out.println("La cadena introducida inicia con a" + verificacion);
            } else {
                System.out.println("La cadena introducida NO inicia con a  " + verificacion);
            }*/
        } else if ((entrada.length() >= 5) && (entrada.length() < 15)) { //Comprobación
            verificacion = "tiene entre  5 y 15 caracteres  ";
           /* valora = entrada.substring(0);
            if (valora == "a") {
                System.out.println("La cadena introducida inicia con a" + verificacion);
            } else {
                System.out.println("La cadena introducida NO inicia con a  " + verificacion);
            }*/
        } else if (entrada.length() > 15) { //Comprobación
            verificacion = "tiene mas de 15 caracteres  ";
           /*valora = entrada.substring(0);
            if (valora == "a") {
                System.out.println("La cadena introducida inicia con a" + verificacion);
            } else {
                System.out.println("La cadena introducida NO inicia con a  " + verificacion);
            }*/
        }
        if (entrada.substring(0, 1).equalsIgnoreCase("a")) {
            valora = "comienza por a";
        } else {
            valora = " no comienza por a";
        }
        System.out.println("La cadena introducida  " + verificacion + " caracteres y " + valora + ".");

    }
}

suerte :) :) :) :)
« Última modificación: 14 de Julio 2016, 14:20 por César Krall »

 

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