Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: 5378453 en 13 de Mayo 2015, 02:02

Título: Ejemplo for java Bucle para recorrer las letras de una cadena Ejercicio CU00658B
Publicado por: 5378453 en 13 de Mayo 2015, 02:02
EJERCICIO

Citar
Crea una clase con un método main que pida una entrada de teclado y usando un bucle for, el método length de la clase String y el método substring de la clase String, muestre cada una de las letras que componen la entrada. Por ejemplo si se introduce “ave” debe mostrar:

Letra 1: a
Letra 2: v
Letra 3: e


Respuesta:

Código: [Seleccionar]
import java.util.Scanner;

public class testFor{

    public static void main (String[]args){
        System.out.println("Introdusca una Cadena");
        String entradaTeclado = "";
        Scanner entradaEscanner = new Scanner(System.in);
        entradaTeclado = entradaEscanner.nextLine();
        int m=0;
        for(int i=0;i<entradaTeclado.length();i++){
            System.out.println(entradaTeclado.substring(m,i+1));
            m++;
        }
    }
}
Título: Re:Sentencia break. Ejemplo ejercicio resuelto. (CU00658B)
Publicado por: RaGa en 13 de Mayo 2015, 03:55
Hola!

Revisando tu código he encontrado que inicias el nombre de la clase con letra minúscula, debes hacerlo siempre con mayúscula.

En tu código falta implementar que cuando se muestra por consola  cada letra de la palabra que se ingresó por teclado, esta debe estar antecedida por el mensaje "Letra n" (siendo n el número de letra); es lo que se nos pide en el ejercicio.

Otra cosa a mejorar es la optimización del código: no declarar más atributos de los que sean necesarios.
En este caso, no es necesario declarar un atributo int m, ya con el atributo int i del bucle podemos lograr cumplir con la consigna del ejercicio.

Te propongo que reescribas el código sin declarar el atributo int m, y reemplazar el bucle for por el siguiente:

Código: [Seleccionar]
for (int i=1;i<=entradaTeclado.length();i++){
            System.out.println("Letra "+i+" : "+entradaTeclado.substring((i-1),i));
        }

Analízalo y si te surgen dudas aquí estamos para ayudarte.