Desafio: Conta Espaços e Vogais
- #Java
Desafio
Jorginho é professor do primário de uma determinada escola. Ele tem 100000 alunos e precisa criar um programa que verifica quantos espaços em branco e quantas vogais existem em uma determinada string de entrada que os alunos entregaram na avaliação final. Ajude-o a realizar essa tarefa antes que o tempo para entrega-la no fim do semestre acabe!
Entrada
A entrada será uma frase no formato de string.
existem algumas maneiras de se resolver esse problema vou listar duas delas, utilizando a comparação direta
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
String[] strSplit = str.split(" ");
int espacosEmBranco = strSplit.length - 1, quantVogais = 0;
for (String item : strSplit) {
for (int i = 0; i < item.length(); i++) {
char c = Character.toLowerCase(item.charAt(i));
if (c == ' ') {
espacosEmBranco++;
} else if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') {
quantVogais++;
}
}
}
System.out.println("Espacos em branco: " + espacosEmBranco + " Vogais: " + quantVogais);
}
}
e temos também comocriar um metodo para checar se é vogal, comparando cada letra da frase com as posições de um array de caracteres.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
String[] strSplit = str.split(" ");
char[] arrVogais = {'a', 'e', 'i', 'o', 'u'};
int espacosEmBranco = strSplit.length - 1, quantVogais = 0;
for (String item : strSplit) {
for (int i = 0; i < item.length(); i++) {
char c = Character.toLowerCase(item.charAt(i));
if (c == ' ') {
espacosEmBranco++;
} else if (isVowel(c, arrVogais)) {
quantVogais++;
}
}
}
System.out.println("Espacos em branco: " + espacosEmBranco + " Vogais: " + quantVogais);
}
public static boolean isVowel(char c, char[] arrVogais) {
for (char vogal : arrVogais) {
if (c == vogal) {
return true;
}
}
return false;
}
}