Questão
ID 67473Disciplina: Tecnologia da Informação
Assuntos: Conceitos Básicos de Algoritmos e Estrutura de Dados, Execução de Algoritmos
Ano: 2025 Banca: PERFIL - ENADE Órgão: Quarto Simulado Pnd
Uma professora de um curso de Licenciatura em Computação está trabalhando com seus alunos para que eles desenvolvam a habilidade de criar 'modelos mentais' robustos sobre o funcionamento de um programa. Ela argumenta que a capacidade de simular mentalmente a execução do código é uma das competências mais importantes de um programador e um pré-requisito para a depuração eficaz. Para isso, ela foca no conceito de 'estado' de um programa. Ela explica: "O 'estado' de um programa em um determinado momento é o conjunto de valores de todas as suas variáveis naquele instante. A execução de um programa é uma sequência de transições de estado. Cada linha de código, especialmente as de atribuição, modifica o estado. Ser capaz de rastrear essas mudanças é fundamental." Ela então propõe uma atividade de 'teste de mesa' (desk check) para um pequeno algoritmo em pseudocódigo que inverte os valores de duas variáveis, `a` e `b`, usando uma variável temporária `temp`.
Código: 1. `a = 5` 2. `b = 10` 3. `temp = a` 4. `a = b` 5. `b = temp`
A tarefa dos alunos é preencher uma tabela que rastreie o estado das variáveis `a`, `b` e `temp` após a execução de cada linha do código.
Qual das seguintes tabelas representa corretamente o rastreamento do estado do programa?