Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: manu37 en 06 de Noviembre 2017, 20:52
-
Buenas noches compañeros, he realizado el ejercicio "Aprender programación Java desde cero/ Pedir datos por consola (CU00657B).
El enunciado dice:
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”.
el código realizado es el siguiente:
import java.util.Scanner;
public class PedirDatos {
public static void main(String [] args){
Scanner teclado = new Scanner(System.in);
String caracteres = "";
System.out.println("Ingrese una palabra o una oración: ");
caracteres = teclado.next();
if(caracteres.length()<5) {
System.out.println("La palabra introducida tiene menos de 5 caracteres.");
}
if(caracteres.length()>5 && caracteres.length()<=15) {
System.out.println("La palabra tiene entre 5 y 15 caracteres.");
}else {
System.out.println("La cadena tiene más de 15 caracteres.");
}
if(caracteres.substring (0, 1).equalsIgnoreCase ("a") || caracteres.substring (0, 1).equalsIgnoreCase ("a")){
System.out.print ("Empieza por la letra A. ");
}
else{
System.out.print ("No empieza por la letra A. ");
}
}
}
-
Hola manu37 !
hay un problema con un "if" en el control del largo de la cadena. Si pongo la palabra "ala" sale la siguiente respuesta
Ingrese una palabra o una oración:
ala
La palabra introducida tiene menos de 5 caracteres.
La cadena tiene más de 15 caracteres.
Empieza por la letra A.
"La cadena tiene más de 15 caracteres." no es correcta.
Un saludo,
Luis
-
Buenos días Luis,
Te agradezco tu ayuda. Lo rectifico.
import java.util.Scanner;
public class PedirDatos {
public static void main(String [] args){
Scanner teclado = new Scanner(System.in);
String caracteres = "";
System.out.println("Ingrese una palabra o una oración: ");
caracteres = teclado.next();
if(caracteres.length()<5) {
System.out.println("La palabra introducida tiene menos de 5 caracteres.");
}
if(caracteres.length()>5 && caracteres.length()<=15) {
System.out.println("La palabra tiene entre 5 y 15 caracteres.");
}else {
if (caracteres.length()>15)
System.out.println("La cadena tiene más de 15 caracteres.");
}
if(caracteres.substring (0, 1).equalsIgnoreCase ("a") || caracteres.substring (0, 1).equalsIgnoreCase ("a")){
System.out.print ("Empieza por la letra A. ");
}
else{
System.out.print ("No empieza por la letra A. ");
}
}
}
-
Correcto !! :)