Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: CarlosAndres21 en 26 de Septiembre 2015, 04:44

Título: pedir una cadena por teclado y evaluar si empieza con una letra Java CU00657B
Publicado por: CarlosAndres21 en 26 de Septiembre 2015, 04:44
Código para el ejercicio CU00657B:

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

public class Informador{

public static void main(String []args){

System.out.println("Introduce una cadena");

String EntradaTeclado="";
boolean EmpiezaPorA=false;


Scanner EntradaEscaner=new Scanner(System.in);

EmpiezaPorA=EntradaTeclado.startsWith("a");
EntradaTeclado=EntradaEscaner.nextLine();


if (EmpiezaPorA==true && EntradaTeclado.length() < 5 ){
System.out.println("La cadena introducida tiene menos de 5 caracteres y empieza por a");}
else if(EmpiezaPorA==false && EntradaTeclado.length() < 5  ){
System.out.println("La cadena introducida tiene menos de 5 caracteres y no empieza por a");}



else if(EmpiezaPorA==true &&  EntradaTeclado.length() >5 && EntradaTeclado.length() < 15){
System.out.println("La cadena introducida tiene entre 5 y 15 caracteres y comienza por a");}
else if(EmpiezaPorA==false && EntradaTeclado.length() >5 && EntradaTeclado.length() < 15){
System.out.println("La cadena introducida tiene entre 5 y 15 caracteres y no comienza por a");}



else if(EmpiezaPorA==true && EntradaTeclado.length()>15){System.out.println("La cadena introducida tiene mas de 15 caracteres y comienza por a ");}
else{System.out.println("La cadena introducida tiene mas de 15 caracteres y no comienza por a");}
}
}
Título: Re:pedir una cadena por teclado y evaluar si empieza con una letra Java CU00657B
Publicado por: Alex Rodríguez en 29 de Septiembre 2015, 11:44
Hola Carlos Andrés, para pegar código en los foros hazlo según se explica en https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0 de ese modo quedará bien

He revisado tu código y no funciona correctamente

Si introducimos:

Introduce una cadena
americaoceaniaafricaeuropaasiantartidaindicopacifico
La cadena introducida tiene mas de 15 caracteres y no comienza por a


En este caso la cadena sí comienza por a y sin embargo el programa indica que no empieza por a.

En primer lugar deberías corregir tu programa (fíjate en el orden de las instrucciones, no puedes evaluar si empieza por a antes de que el usuario haya introducido la cadena).

Por otro lado deberías mejorar tu código para que sea más simple, mejorando así el diseño. Fíjate en la solución propuesta en este hilo, te puede servir de ayuda: https://www.aprenderaprogramar.com/foros/index.php?topic=2873.0

Saludos