Dúvida de String e Função C++

22/09/2020

8

Pessoal, estou precisando fazer um programa que receba uma string e apresente na tela todas as vogais encontradas, qual a posição das mesmas e qual o tamanho da string recebida.

Exemplo de entrada:

avestruz

Exemplo de saída do programa:

a - posição 0

e - posição 2

u - posição 6

Preciso tb, caso seja utilizada uma função, que deve receber por parâmetro a string, apresentar na tela as vogais encontradas e cada uma posição.

Como eu faço isso??
Danilo

Danilo

Responder

Posts

25/09/2020

Isaque

Um modo de resolver este problema é criando uma função que recebe uma String como parâmetro e também criando uma váriável do tipo lista que contém todas as vogais.

Ex:

Função:
public static void encontraVogal(String palavra)

Variável:
static List<String> vogais = Arrays.asList("a","e","i","o","u");


Dentro da função você irá pegar a variável do parametro e irá separar todas as letras e adiciona-las num vetor. Um modo para fazer isso faciomente é através da função split que serve para fatiamento de string e que retornar exatamente um vetor dessas strings separadas, faça conforme exemplo abaixo:

Ex:
String[] letras = palavra.split("", palavra.length());

Por fim, basta percorremos esse vetor de letras através de um for e dentro do mesmo fazer a identificação de uma vogal através da variável vogais (que possui a função constains que nos ajuda nisso) e por fim printarmos os resultados, como segue abaixo:

Ex:
for(int i = 0; i < letras.length; i ++){
if(vogais.contains(letras[i])){
System.out.println(letras[i] + " - posição - " + i);
}
}


Código completo:
public class EncontraVogal {
static List<String> vogais = Arrays.asList("a","e","i","o","u");

public static void main(String[] args){
encontraVogal("avestruz");
}

public static void encontraVogal(String palavra){

String[] letras = palavra.split("", palavra.length());

for(int i = 0; i < letras.length; i ++){
if(vogais.contains(letras[i])){
System.out.println(letras[i] + " - posição - " + i);
}
}
}
}

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários,
consulte nossa política de privacidade.

Aceitar