Com o comando de repetição repetir-até-que (repeatuntil) po...

Próximas questões
Com base no mesmo assunto
Q762241 Algoritmos e Estrutura de Dados
Com o comando de repetição repetir-até-que (repeatuntil) pode-se simular o comportamento do enquanto-que (while). Dado o trecho de pseudocódigo esquemático abaixo, assinale a alternativa em que se simula o comportamento do enquanto-que com o repetir-até-que, onde S é uma sequência arbitrária de comandos e C uma expressão boolena que incorpora a condição de parada do laço.
enquanto que C S fim-enquanto
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a C. Vamos entender por quê e analisar as outras alternativas?

A questão aborda a transformação de um laço while em um laço repeat-until. Para resolver essa questão, é necessário compreender o funcionamento dos dois tipos de laços:

  • Enquanto-que (while): Este laço executa uma sequência de comandos enquanto uma condição é verdadeira. Ou seja, a condição é verificada antes da execução do bloco de comandos.
  • Repetir-até-que (repeat-until): Este laço executa a sequência de comandos pelo menos uma vez e continua a execução até que uma condição se torne verdadeira. A condição é verificada após a execução do bloco de comandos.

Para simular o comportamento de um laço while usando um laço repeat-until, deve-se garantir que a condição do while seja verificada antes da repetição dos comandos. Vamos analisar as alternativas:

Alternativa A:

Se C então faça
repita
S
até que C
fim-se

Comentário: Esta alternativa está incorreta, pois a condição C continua a ser verificada dentro do repeat-until, o que não corresponde ao comportamento do while original.

Alternativa B:

Se (não C) então faça
repita
S
até que C
fim-se

Comentário: Essa alternativa está incorreta porque começa a repetição quando a condição não C é verdadeira, o que inverte a lógica do while.

Alternativa C (Correta):

Se C então faça
repita
S
até que (não C)
fim-se

Comentário: Esta alternativa está correta, pois verifica C inicialmente e então executa o bloco S repetidamente até que a condição não C se torne verdadeira, simulando assim corretamente o comportamento do while.

Alternativa D:

Se (não C) então faça
repita
S
até que (não C)
fim-se

Comentário: Esta alternativa está incorreta pois inverte a condição inicial e também a condição dentro do laço, o que não corresponde ao comportamento do while.

Alternativa E:

Se C então faça
repita
C = (não C)
S
até que C
fim-se

Comentário: Esta alternativa está incorreta porque altera a condição C dentro do laço de repetição, o que não é necessário e confunde a lógica do while.

Portanto, a alternativa C é a que melhor simula o comportamento do laço while utilizando o laço repeat-until.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Força Guerreiro!!!!!!

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo