Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: momo en 05 de Septiembre 2014, 22:40

Título: Entrega: CU00658B ejemplo método length de la clase String java
Publicado por: momo en 05 de Septiembre 2014, 22:40
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*/



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

public class EntradaTeclado
{
    public static void main(String[] args)
    {
        System.out.println("Introdusca la Palabra ");
        String palabra="";
        Scanner escaneo=new Scanner(System.in);
        palabra=escaneo.nextLine();
       
        for(int i=1;i<palabra.length();i++)
        {
          String cadena=palabra.substring(i,i+1);
          System.out.println("Letra "+ i + ":" + cadena);
       
        }
       
   
    }//cierre main


}//cierre clase

Título: Re:Entrega: CU00658B
Publicado por: Jorge lopez en 05 de Septiembre 2014, 23:49
Mirando tu codigo he notado que esta incorrepto con referencia al ejercicio, por ejemplo: si introducimos la palabra ave: tu programa devuelve :

Letra 1: v                                                                                 
Letra 2: e

Cuando deveria devolver:
                                                                                 
Letra 1: a
Letra 2: v                                                                                 
Letra 3: e

Para esto, deberias cambiar el valor inicial de "i" por 0 en ves de 1, y en el mensaje para mostrar evitarías que se imprima la secuencia:

0
1
2

si usas un contador como (i+1)

Tu código quedaría mas o menos así:
Código: [Seleccionar]
import java.util.Scanner;

public class EntradaTeclado
{
    public static void main(String[] args)
    {
        System.out.println("Introdusca la Palabra ");
        String palabra="";
        Scanner escaneo=new Scanner(System.in);
        palabra=escaneo.nextLine();
        System.out.println("");
        for(int i=0; i<palabra.length(); i++)
        {
          String cadena=palabra.substring(i,i+1);
          System.out.println("Letra "+ (i+1) + ": " + cadena);       
        }
    }//cierre main
}//cierre clase

Saludos!
Título: Re:Entrega: CU00658B
Publicado por: momo en 06 de Septiembre 2014, 03:22
Sniper Bueno si tienes razón sniper me confundí en esas dos cosas no me di cuenta con lo de igualarlo a  1  me arrojaría el resultado de esa manera , y con lo del contador igual

Muchas gracias amigo  por las correcciones ya modifique el código de nuevo