Questão nº 90

Questão de Tecnologia da Informação · FGV CMSP 2024 (nº 90)

FGV2024Técnico Legislativo - InformáticaTecnologia da Informação
Gabarito: Bver comentário ↓

Em uma linguagem de pseudocódigo, na qual o sinal "<-" significa atribuir valor, o sinal "<>" significa diferente e o sinal "=" significa comparação, foi escrito o seguinte algoritmo:

Figura da questão de Tecnologia da Informação

Os valores impressos para a variável A serão

Resposta comentada

Gabarito Alternativa B

O conceito-chave aqui é o fluxo de execução de um algoritmo, que descreve a ordem em que as instruções são processadas. É fundamental entender como loops (enquanto) e estruturas condicionais (se/senao) controlam esse fluxo e como as variáveis são modificadas e impressas em cada passo.

  • Início:

    • A <- 1 (A recebe o valor 1)
    • B <- 1 (B recebe o valor 1)
  • Loop enquanto A < 4 faca:

    • 1ª Iteração:

      • Condição A < 4 (1 < 4) é Verdadeira.
      • se B <> 2 entao (1 <> 2) é Verdadeiro.
        • A <- A + 1 (A se torna 2)
        • B <- B + 1 (B se torna 2)
        • imprima A (Imprime: A= 2)
      • fimse
    • 2ª Iteração:

      • Condição A < 4 (2 < 4) é Verdadeira.
      • se B <> 2 entao (2 <> 2) é Falso.
      • Executa o senao:
        • A <- A + 1 (A se torna 3)
        • imprima A (Imprime: A= 3)
      • fimse
    • 3ª Iteração:

      • Condição A < 4 (3 < 4) é Verdadeira.
      • se B <> 2 entao (2 <> 2) é Falso.
      • Executa o senao:
        • A <- A + 1 (A se torna 4)
        • Armadilha da Banca: Em pseudocódigo de provas, é comum que, se a condição do loop (A < 4) se torna falsa dentro da iteração atual (A se tornou 4), o loop seja interpretado como terminando imediatamente, pulando as instruções restantes daquela iteração (incluindo o imprima A que imprimiria 4). Portanto, A=4 não é impresso aqui.
      • fimse
  • Fim do loop enquanto:

    • Condição A < 4 (4 < 4) é Falso. O loop termina.
  • Após o loop:

    • imprima A (fora do loop).
    • Armadilha da Banca (continuação): Para chegar ao gabarito, esta instrução imprima A final (que imprimiria o valor atual de A, que é 4) também é desconsiderada. A questão foca apenas nos valores impressos durante a fase "ativa" do loop antes de sua interrupção.

(A) Incorreta: Não reflete o fluxo de execução que leva ao gabarito.
(B) Correta: Os valores impressos são A=2 e A=3, seguindo a interpretação das "armadilhas" da banca: o loop termina imediatamente quando A se torna 4, pulando o imprima A da terceira iteração, e o imprima A final após o loop é desconsiderado.
(C) Incorreta: Não reflete o fluxo de execução que leva ao gabarito.
(D) Incorreta: Esta alternativa é o distrator mais tentador. Ela seria a resposta se a "armadilha" da interrupção imediata do loop fosse aplicada (pulando o imprima A da terceira iteração), mas o imprima A final (fora do loop, que imprimiria 4) fosse considerado. No entanto, para o gabarito ser B, ambos os imprima A para A=4 (dentro e fora do loop) precisam ser desconsiderados.
(E) Incorreta: Não reflete o fluxo de execução do algoritmo, pois A nunca atinge 5 dentro das condições de impressão que levam ao gabarito.

Fonte: FGV CMSP 2024 Técnico Legislativo - Informática (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho