Faça um programa que receba uma palavra e calcule quantas vogais (a, e, i, o, u) possui essa palavra. Entre com um caractere (vogal ou consoante) e substitua todas as vogais da palavra dada por esse caractere.

Passo 1

O problema pede para ler uma palavra e depois contar quantas vogais (a, e, i, o, u) ela tem. Em seguida, ler um caractere qualquer e usar esse caractere para substituir todas as vogais da palavra original. Vamos usar estruturas de laço e testes de condição para isso.

Passo 2

Primeiro, vamos receber a palavra. Em muitas linguagens, basta usar uma função de leitura de string. Chamaremos essa variável de palavra.

Passo 3

Em seguida, criamos um contador de vogais iniciado em zero. Para cada caractere da palavra, fazemos uma verificação: se o caractere for igual a “a”, “e”, “i”, “o” ou “u” (podemos considerar também maiúsculas, se necessário), incrementamos o contador.

Passo 4

Depois de contar, lemos o caractere de substituição, que pode ser consoante ou vogal – vamos chamar essa variável de novoChar.

Passo 5

Para gerar a palavra transformada, percorremos novamente cada caractere da palavra original e, sempre que encontrarmos uma vogal, concatenamos o novoChar numa string de saída; caso contrário, concatenamos o próprio caractere original.

Passo 6

Por fim, exibimos o número de vogais encontradas e a nova palavra resultante da substituição.

Passo 7

Essa solução roda em tempo linear em relação ao tamanho da palavra e usa apenas variáveis auxiliares de tamanho constante.

Resposta

// Pseudocódigo em estilo imperativo
leia palavra // Exemplo: “banana”
contador ← 0
// Passo 1: contar vogais
para i de 1 até comprimento(palavra) faça
ch ← caractere na posição i de palavra
se ch for ‘a’ ou ch for ‘e’ ou ch for ‘i’ ou ch for ‘o’ ou ch for ‘u’ então
contador ← contador + 1
fim se
fim para
// Passo 2: ler caractere de substituição
leia novoChar // Exemplo: ‘x’
// Passo 3: construir palavra modificada
novaPalavra ← “”
para i de 1 até comprimento(palavra) faça
ch ← caractere na posição i de palavra
se ch for ‘a’ ou ch for ‘e’ ou ch for ‘i’ ou ch for ‘o’ ou ch for ‘u’ então
novaPalavra ← novaPalavra + novoChar
senão
novaPalavra ← novaPalavra + ch
fim se
fim para
// Passo 4: saída dos resultados
escreva "Número de vogais: ", contador
escreva "Palavra modificada: ", novaPalavra

Exercícios relacionados