GeraProva GeraProva Provas com IA para professores do Brasil
Computação1ª sérieBNCC EM13CO04Difícil⏱ medio

Em um sistema de bilhetagem de ônibus, uma equipe desenvolveu a ferramenta Rastreador para investigar falhas…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13CO04

Reconhecer o conceito de metaprogramação como uma forma de generalização na construção de programas, permitindo que algoritmos sejam entrada ou saída para outros algoritmos.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Em um sistema de bilhetagem de ônibus, uma equipe desenvolveu a ferramenta Rastreador para investigar falhas no roteiro de controle do validador. Esse roteiro contém instruções como ler o cartão, verificar o saldo, registrar a passagem e liberar a catraca. No modo de acompanhamento, o Rastreador recebe esse roteiro e produz uma nova versão, sem edição manual, acrescentando instruções que registram o início e o fim de cada etapa e os valores lidos em pontos críticos. Em outro modo, a partir do mesmo roteiro, ele gera automaticamente roteiros curtos para testar situações como cartão inválido, saldo zero e leitura dupla. Considerando especificamente o modo de acompanhamento descrito no texto, qual ação evidencia a metaprogramação como forma de generalização na construção de programas?

  1. A) Executar o roteiro recebido para verificar se a catraca é liberada.
  2. B) Ler o cartão, verificar o saldo e liberar a catraca conforme o roteiro.
  3. C) Gerar roteiros curtos para testar cartão inválido, saldo zero e leitura dupla.
  4. D) Produzir um novo roteiro a partir do roteiro recebido, acrescentando instruções de registro.
  5. E) Registrar o início, o fim e os valores de cada etapa durante a execução.

✅ Resposta correta: alternativa D

Resolução passo a passo

  1. A metaprogramação ocorre quando um programa trata outro programa como dado, isto é, lê, analisa ou produz código. Passo 2: No modo de acompanhamento, o Rastreador recebe o roteiro original e produz uma nova versão dele, sem edição manual, acrescentando instruções de registro. A ação central é, portanto, transformar um programa em outro programa, o que caracteriza a metaprogramação. Passo 3: A alternativa D descreve exatamente essa ação: a partir do roteiro recebido, é produzido um novo roteiro com instruções de registro acrescentadas. Passo 4: A alternativa A está errada porque executar o roteiro é apenas rodar um programa, sem gerar outro. Passo 5: A alternativa B está errada porque descreve o conteúdo do roteiro original (ler, verificar, liberar), que não é criado nem transformado pelo Rastreador. Passo 6: A alternativa C está errada porque a geração de roteiros curtos para cartão inválido, saldo zero e leitura dupla pertence ao outro modo descrito no texto, não ao modo de acompanhamento. Passo 7: A alternativa E está errada porque o registro de início, fim e valores é o efeito do roteiro produzido durante a execução, e não a ação de metaprogramação realizada pelo Rastreador. Passo 8: Conclusão: a resposta correta é a D, em concordância com o gabarito oficial.

💡 Dica: Analise como o Rastreador modifica e gera roteiros automaticamente.

Alternativa por alternativa

A Erradaerro: Conceitual

O aluno entende que a ação relevante é apenas executar o roteiro recebido, confundindo execução de um programa com a geração de outro programa.

B Erradaerro: Interpretação

O aluno descreve o comportamento do roteiro original como se fosse a ação do Rastreador, sem perceber que o texto pede a ação que transforma o programa.

C Erradaerro: Interpretação

O aluno lê a pergunta de forma imprecisa e associa o Rastreador à geração de roteiros de teste, que pertence ao outro modo descrito, ignorando a restrição 'especificamente o modo de acompanhamento'.

D Correta

A metaprogramação ocorre quando um programa manipula outro programa ou roteiro como dado. No caso apresentado, o Rastreador recebe um roteiro de controle e gera automaticamente uma nova versão dele, com instruções adicionais de registro. Essa transformação permite aplicar o mesmo mecanismo a diferentes roteiros, caracterizando generalização.

E Erradaerro: Conceitual

O aluno confunde o efeito do roteiro gerado (registrar início, fim e valores) com a própria metaprogramação, sem notar que esse registro é executado pelo programa produzido e não pelo ato de gerá-lo.

Raio-X da questão

Dificuldade Difícil
Bloom Entender
Leitura medio
Discriminação medio
Peso pedagógico medio
Autonomia do enunciado completo
Cobertura da habilidade unica
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 progressao
🎯 Conceito central

metaprogramação e generalização

📌 Objetivo

diagnostico

🧱 Pré-requisitos

conceito de programação básica · geração automática de código

📚 Reveja

Estude o conceito de metaprogramação e geração automática de código.

⚠️ Erro mais comum

Confundir metaprogramação com simples execução de instruções sem modificação do código.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cotidiano

Questões parecidas com resolução

Todas as questões de [CONFERIR] Construir soluções baseadas no uso de algoritmos e conceitos da Computação para resolver problemas, avaliando suas qualidades e melhorando-as.

🔎 Resolver outra questão

Cole o enunciado e veja a resolução passo a passo, a alternativa correta e por que as outras estão erradas.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.