Observe o pseudocódigo abaixo, que utiliza a estrutur...
repetir
se (N for impar) então imprimir (N);
atribuir N - 3 a N;
até que N < 3;
Para um valor inicial igual a 13 para a variável N, a estrutura enquanto ... faça ... equivalente e que gera os mesmos resultados, está indicada na alternativa:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Vamos analisar a questão e entender a lógica por trás dela. O problema nos apresenta um pseudocódigo que utiliza a estrutura de controle repetir ... até que ..., e pede que identifiquemos a estrutura enquanto ... faça ... equivalente. A variável N começa com o valor inicial de 13.
Para encontrar a alternativa correta, vamos primeiro compreender o que o pseudocódigo original faz:
repetir
se (N for ímpar) então imprimir (N);
atribuir N - 3 a N;
até que N < 3;
Isso quer dizer que o loop continuará enquanto N for maior ou igual a 3. No corpo do loop, se N for ímpar, ele será impresso, e depois subtrai-se 3 de N.
A estrutura equivalente em enquanto ... faça ... será:
Alternativa correta: B
enquanto N >= 3 faça
início
se (N ímpar) então imprimir(N);
atribuir N – 3 a N;
fim;
fim-enquanto;
Justificativa: A alternativa B realiza as mesmas ações da estrutura repetir ... até que .... Ela verifica se N é ímpar e imprime o valor se for o caso. Em seguida, subtrai 3 de N. O loop continua enquanto N for maior ou igual a 3.
Vamos analisar por que as outras alternativas estão incorretas:
Alternativa A:
Ela começa com a ação de subtrair 3 de N antes de verificar se N é ímpar, o que altera a sequência das operações. A estrutura correta deve verificar a condição de paridade de N antes de subtrair 3.
Alternativa C:
Nessa alternativa, a condição do loop é enquanto N = 3. Isso significa que o loop será executado apenas se N for exatamente 3, o que não é o comportamento desejado. A condição correta deve ser enquanto N >= 3.
Alternativa D:
Aqui, a condição do loop é enquanto N < 3, o que é o inverso do desejado. O loop deve continuar enquanto N for maior ou igual a 3, não menor.
Alternativa E:
Similar à alternativa A, esta alternativa também começa subtraindo 3 de N antes de verificar se N é ímpar. Isso altera a lógica do pseudocódigo original.
Portanto, a alternativa correta é a B, pois ela corresponde exatamente à lógica do pseudocódigo fornecido.
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
Já no enquanto, temos que ir até que a condição seja FALSA. É o contrário. Vai deixar de valer quando for 1. Ou seja , enquanto (N >= 3) for VERDADEIRO, continuo.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo