Raciocínio Lógico Múltipla Escolha

Considere um trecho de código que lê um conjunto de 16 letras e as armazena em um vetor. O código deve contabilizar quantas vezes aparecem as vogais 'E' e 'U' em uma variável total.

Considere um trecho de código que lê um conjunto de 16 letras e as armazena em um vetor. O código deve contabilizar quantas vezes aparecem as vogais 'E' e 'U' em uma variável total.

  1. int total = 0, ind; char letra; for (ind = 0; ind < 16; ind++) { scanf("%c", &letra); if (letra == 'E' || letra == 'U') total++; }
  2. int total = 0; char letra; for (ind = 0; ind < 16; ind++) { scanf("%c", &letra); if (letra == 'E' || letra == 'U') total++; }
  3. int total = 0, ind; char letra; for (ind = 0; ind < 16; ind++) { scanf("%c", &letra); if (letra == 'E' || letra == 'U') total++; }
  4. int total = 0, ind; char letra; for (ind = 0; ind < 16; ind++) { scanf("%c", &letra); if (letra == 'E' || letra == 'U') total++; }
  5. int total = 0, ind; char letra; for (ind = 0; ind < 16; ind++) { scanf("%c", &letra); if (letra == 'E' || letra == 'U') total++; }

Resolução completa

Explicação passo a passo

E
Alternativa E

Alternativa E

A questão solicita um código que leia 10 caracteres, os armazene em um vetor e conte quantas vezes aparecem as vogais 'E' e 'U'. Para isso, é necessário garantir três pontos principais na lógica:

  1. Iteração correta: Um laço for deve rodar exatamente 10 vezes.
  2. Armazenamento: Cada caractere lido deve ser salvo em uma posição específica do vetor (letra[i]).
  3. Verificação imediata: A condição if para verificar se é vogal deve estar dentro do laço, para analisar cada caractere individualmente.

Análise das Alternativas

  • Lógica do Laço: Em C/C++, sem chaves {}, o bloco executado pelo for contém apenas a primeira instrução seguinte. Isso elimina as opções onde o if está fora do escopo do for.
  • Opção A: O if está fora do laço (sem chaves), verificando apenas o último valor ou gerando erro lógico. Além disso, usa letra[i] com declaração de variável simples.
  • Opção B: Possui chaves {}, mas lê em &letra (variável única) ao invés de &letra[i]. Isso não cumpre o requisito de armazenar em um vetor, pois sobrescreve a mesma posição 10 vezes.
  • Opção C e D: O comando if está posicionado após o fechamento do for (ou sem chaves), significando que a verificação ocorre apenas uma vez após terminar a leitura, não contando todas as ocorrências.
  • Opção E: É a única que estrutura corretamente o fluxo:
  • Usa scanf dentro do laço com índice [i].
  • Usa chaves {} para agrupar a leitura e a verificação.
  • Verifica a condição if em cada iteração.

Embora a declaração da variável char letra na imagem pareça indicar uma variável simples (e não um array), o contexto das alternativas (uso de [i]) e o enunciado ("vetor") indicam que a intenção é tratar letra como um vetor. A opção E é a que melhor representa a lógica solicitada.

Conclusão
A estrutura correta exige que a leitura e a verificação estejam dentro do mesmo bloco de repetição. Portanto, a alternativa E é a resposta correta.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Raciocínio Lógico

Ver mais Raciocínio Lógico resolvidas

Tem outra questão de Raciocínio Lógico?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.