Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — SUGEP - UFRPE 2018

Algoritmos e Estrutura de DadosAlgoritmos
Código
qq400627
Banca
SUGEP - UFRPE
Órgão
UFRPE
Ano
2018
Nível
Médio
Cargo
SUGEP - - Técnico de Tecnologia da Informação - Sistemas
Considere o algoritmo a seguir Inteirox1 =2, x2 = -1, x3 = 4Enquanto (x1 > 0) façax2 = x3/3-x2*4x1 = x3 % x1Fim enquantoImprime(x2)O que será impresso ao final do programa?
  1. A0
  2. B5
  3. C10
  4. D-1
  5. E4
Revelar gabarito e comentário

GabaritoB — 5

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Algoritmo com laço de repetição

Gabarito: letra B (5). Ao executar o algoritmo, a variável x2 assume o valor 5 após a única iteração do laço, conforme a simulação passo a passo abaixo.

O algoritmo possui três variáveis inteiras inicializadas: x1 = 2, x2 = -1, x3 = 4. O laço Enquanto (x1 > 0) executa enquanto a condição for verdadeira.

1ª iteração (x1 = 2 > 0, verdadeiro):

x2 = x3 / 3 - x2 * 4 x1 = x3 % x1

Considerando que as variáveis são inteiras, a divisão resulta em truncamento: 4 / 3 = 1. Então:

x2 = 1 - (-1 * 4) = 1 - (-4) = 5 x1 = 4 % 2 = 0

Após a iteração, x1 = 0. A condição do laço (x1 > 0) agora é falsa, portanto o laço termina.

Por fim, o comando Imprime(x2) exibe o valor de x2, que é 5.

Alternativas

Alternativa A — ❌ Incorreta

Valor 0: não corresponde ao resultado do algoritmo; possivelmente confusão com o valor de x1 após o loop.

Alternativa B — ✅ Correta ⟵ GABARITO

Valor 5: resultado correto após a execução, conforme demonstrado.

Alternativa C — ❌ Incorreta

Valor 10: resultado que não ocorre em nenhum passo; possível erro ao realizar as operações aritméticas (ex.: tratar 4/3 como 2 e somar incorretamente).

Alternativa D — ❌ Incorreta

Valor -1: é o valor inicial de x2, mas foi alterado durante o loop.

Alternativa E — ❌ Incorreta

Valor 4: confusão com o valor de x3 ou com o resultado de x2 se o loop não alterasse a variável.

Link permanente: /questoes/qq400627