Arreglo: Antes sólo comprobaba vocales, no todas las letras. Ahora lo hace bien.

This commit is contained in:
2024-10-29 14:03:04 +01:00
parent 0370218b66
commit b8c291257c

View File

@@ -5,41 +5,41 @@ import static capitulo04.utils.Utils.solicitarStringScanner;
public class Ejercicio06 { public class Ejercicio06 {
public static void main(String[] args) { public static void main(String[] args) {
String palabraIntroducida = solicitarStringScanner("Introduzca una palabra para comprobar si es un pangrama"); String palabraIntroducida = solicitarStringScanner("Introduzca una palabra para comprobar si es un pangrama");
boolean letraA = false, boolean[] letras = new boolean[26];
letraE = false,
letraI = false,
letraO = false,
letraU = false;
palabraIntroducida = cambiarAMinuscula(palabraIntroducida); palabraIntroducida = cambiarAMinuscula(palabraIntroducida);
for (int i = 0; i < palabraIntroducida.length(); i++) { for (int i = 0; i < palabraIntroducida.length(); i++) {
if (palabraIntroducida.charAt(i) == 'a') { char caracter = palabraIntroducida.charAt(i);
letraA = true; if (caracter >= 'a' && caracter <= 'z') {
} else if (palabraIntroducida.charAt(i) == 'e') { letras[caracter - 'a'] = true;
letraE = true;
} else if (palabraIntroducida.charAt(i) == 'i') {
letraI = true;
} else if (palabraIntroducida.charAt(i) == 'o') {
letraO = true;
} else if (palabraIntroducida.charAt(i) == 'u') {
letraU = true;
} }
} }
if (letraA && letraE && letraI && letraO && letraU) {
boolean esPangrama = true;
for (boolean letra : letras) {
if (!letra) {
esPangrama = false;
break;
}
}
if (esPangrama) {
System.out.println("Sí es un pangrama"); System.out.println("Sí es un pangrama");
} else { } else {
System.out.println("No es un pangrama"); System.out.println("No es un pangrama");
} }
} }
public static String cambiarAMinuscula(String textoACambiar) { public static String cambiarAMinuscula(String textoACambiar) {
String minuscula = ""; StringBuilder minuscula = new StringBuilder();
for (int i = 0; i < textoACambiar.length(); i++) { for (int i = 0; i < textoACambiar.length(); i++) {
if (textoACambiar.charAt(i) >= 65 && textoACambiar.charAt(i) <= 90) { char c = textoACambiar.charAt(i);
minuscula += (char) (textoACambiar.charAt(i) + 32); if (c >= 65 && c <= 90) {
minuscula.append((char) (c + 32));
} else { } else {
minuscula += textoACambiar.charAt(i); minuscula.append(c);
} }
} }
return minuscula; return minuscula.toString();
} }
} }