Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: manu37 en 08 de Noviembre 2017, 10:53
-
Buenos días compañeros, he realizado el ejercicio del curso "Aprender a programa Java desde cero / Bucle For en Java (CU00658B)
Enunciado:
Crea un a clase con 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.
import java.util.*;
public class TestFor {
public static void main(String[] args) {
Scanner teclado= new Scanner(System.in);
String palabra="";
System.out.println("Ingrese una palabra: ");
palabra = teclado.nextLine();
for(int i=0; i<palabra.length(); i++) {
System.out.println(palabra);
}
for(int i = 0; i<palabra.length(); i++) {
System.out.println(palabra.substring(i, i+1));
}
}
}
Gracias por todo
saludos
-
Hola manu37
Solo una pequeña corrección.
Te sobra esta parte del código:
for(int i=0; i<palabra.length(); i++) {
System.out.println(palabra);
}
Esto lo que hace es mostrar la palabra entera, tantas veces como sea su longitud.
Es decir, si la palabra fuese: "avion"
En pantalla saldría esto:
avion
avion
avion
avion
avion
Así que ese bucle for puedes borrarlo sin más.
El siguiente bucle, sí es correcto y es el único que necesitas para cumplir el enunciado:
for(int i = 0; i<palabra.length(); i++) {
System.out.println(palabra.substring(i, i+1));
}
Esto, para "avion" te daría este resultado:
a
v
i
o
n
Aunque puedes mejorarlo un poco así:
for(int i = 0; i<palabra.length(); i++) {
System.out.println("Letra " + i+1 + ": " + palabra.substring(i, i+1));
}
Esto te mostraría en pantalla:
Letra 1: a
Letra 2: v
Letra 3: i
Letra 4: o
Letra 5: n
Cualquir posible duda que puedas tener, no dudes en preguntar.
Un saludo.