Português Múltipla Escolha

Faça um programa que leia uma lista de números terminada em zero e mostre se o número é par ou ímpar. Assinale a alternativa que apresenta corretamente esse trecho de código em Portugol Studio, usando o comando com teste no início (pré-teste).

Faça um programa que leia uma lista de números terminada em zero e mostre se o número é par ou ímpar. Assinale a alternativa que apresenta corretamente esse trecho de código em Portugol Studio, usando o comando com teste no início (pré-teste).

  1. leia(num) enquanto (num!=0) { se num%2==0 escreva ("numero par") senao escreva ("numero impar") } leia(num)
  2. leia(num) faca { se num%2==0 escreva ("numero par") senao escreva ("numero impar") } enquanto (num!=0)
  3. leia(num) enquanto (num==0) { se num%2==0 escreva ("numero par") senao escreva ("numero impar") } leia(num)

Resolução completa

Explicação passo a passo

A
Alternativa A

Alternativa A

A questão solicita um algoritmo em Portugol Studio que leia números até encontrar zero, indicando se são pares ou ímpares, utilizando especificamente uma estrutura de repetição de pré-teste.

Análise Detalhada

Para resolver este problema, precisamos entender três pontos fundamentais: a estrutura de controle solicitada, a lógica de parada e a sintaxe do Portugol.

  1. Pré-teste vs Pós-teste:
  • Pré-teste: O teste da condição é feito antes de executar o bloco de comandos. Se a condição for falsa imediatamente, o bloco nunca é executado. No Portugol, isso é feito com o comando enquanto (...) { ... }.
  • Pós-teste: O teste é feito depois de executar o bloco pelo menos uma vez. No Portugol, usa-se faca { ... } enquanto (...).
  1. Lógica de Parada:
  • O enunciado diz que a lista é "terminada em zero". Isso significa que o programa deve continuar lendo e processando números desde que o valor lido não seja igual a zero.
  • Em termos de condição de continuidade, usamos num != 0 (diferente de zero).
  1. Análise das Alternativas:
AlternativaEstrutura de RepetiçãoLógica de CondiçãoVeredito
Aenquanto (Pré-teste)num != 0 (Correto)Correta
Bfaca ... enquanto (Pós-teste)num != 0 (Correto)Incorreta (tipo errado)
Cenquanto (Pré-teste)num == 0 (Incorreto)Incorreta (lógica invertida)
  • Por que a Alternativa A está certa? Ela inicia com leia(num), verificando a entrada. O comando enquanto (num!=0) garante que o bloco só rode se o número não for zero (pré-teste). Dentro do bloco, verifica-se par/impar e logo após, leia (num) atualiza a variável para a próxima iteração.
  • Por que a B está errada? Embora a lógica de parada esteja certa, ela usa faca...enquanto, que é um laço de pós-teste, contrariando a exigência do enunciado.
  • Por que a C está errada? A condição enquanto (num==0) faria o programa parar imediatamente se o primeiro número fosse diferente de zero, pois a condição seria falsa. O ideal é que o loop rode enquanto o número for diferente de zero.

Em resumo, a estrutura enquanto atende ao requisito de pré-teste e a condição num!=0 garante que o loop continue recebendo dados válidos até que o sentinel (zero) seja encontrado.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Português

Ver mais Português resolvidas

Tem outra questão de Português?

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