GeraProva GeraProva Provas com IA para professores do Brasil
Computação3ª sérieBNCC EM13CO04Média⏱ medio

— Mudou de novo a taxa do marketplace, e agora? — perguntou a tesoureira da cooperativa, que vende artesanato…

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

— Mudou de novo a taxa do marketplace, e agora? — perguntou a tesoureira da cooperativa, que vende artesanato on-line. O técnico explicou que o sistema da loja tem uma parte fixa e uma parte que muda com frequência: a regra de cálculo da taxa. Para evitar editar o programa principal toda semana, ele fez um utilitário interno. Nele, a tesoureira preenche um formulário com condições (por exemplo, tipo de produto e faixa de preço) e percentuais. Ao salvar, o utilitário monta automaticamente um novo arquivo com instruções de cálculo, coloca esse arquivo na pasta do sistema e registra a versão criada. Na próxima execução, o sistema principal passa a usar o arquivo recém-criado para calcular as taxas dos pedidos, sem que alguém escreva manualmente o novo trecho de código. Com base no texto, identifique a ideia de programação que descreve um programa produzir, como resultado, um algoritmo que será executado por outro programa.

  1. A) Uso de um programa que apenas organiza o código em funções para facilitar a manutenção do sistema.
  2. B) Uso de um programa que compila o sistema para torná-lo mais rápido, mantendo a mesma regra de cálculo.
  3. C) Uso de um programa que somente interpreta dados de entrada e calcula a taxa sem alterar o que será executado depois.
  4. D) Uso de um programa que gera outro trecho de programa a partir de regras preenchidas pelo usuário.
  5. E) Uso de um programa que repete cálculos em laço para aplicar a mesma taxa a muitos pedidos do mesmo tipo.

✅ Resposta correta: alternativa D

Resolução passo a passo

  1. O texto descreve um utilitário que, a partir de um formulário preenchido pela tesoureira (condições e percentuais), monta automaticamente um novo arquivo com instruções de cálculo. Esse arquivo é então usado pelo sistema principal na próxima execução, sem que alguém escreva o código manualmente.
  2. A ideia de programação descrita é a de um programa que gera código (ou um programa que produz outro programa/algoritmo), isto é, a geração automática de código a partir de regras ou dados. O resultado produzido pelo utilitário é justamente um novo trecho executável que outro programa vai rodar.
  3. Comparando com as alternativas: a alternativa A está errada porque organizar código em funções é refatoração, e não gera um novo algoritmo. A alternativa B está errada porque a compilação traduz o programa para outra forma, mas não cria uma nova regra de cálculo a partir de dados do usuário. A alternativa C está errada porque o texto afirma exatamente o contrário: o novo arquivo altera o que será executado depois. A alternativa E está errada porque repetir cálculos em laço é iteração, e não a produção de um algoritmo novo.
  4. Portanto, o gabarito D está correto, pois descreve exatamente um programa que gera outro trecho de programa a partir de regras preenchidas pelo usuário.

💡 Dica: Identifique a ideia de programação que permite gerar código automaticamente.

Alternativa por alternativa

A Erradaerro: Conceituala que mais engana

Confunde a geração de um novo algoritmo com a simples organização do código existente em funções, que apenas melhora a manutenção sem criar nada novo.

Por que engana: Confundir geração automática de código com interpretação ou organização de código.

B Erradaerro: Interpretação

Associa o resultado do utilitário à otimização de desempenho por compilação, ignorando que o texto fala em criar novas regras de cálculo a partir de um formulário.

C Erradaerro: Interpretação

Entende que o utilitário apenas calcula taxas, sem perceber que o arquivo gerado passa a ser usado pelo sistema principal, alterando o que será executado depois.

D Correta

O utilitário cria um arquivo com instruções de cálculo (algoritmo) que passa a ser usado pelo sistema principal, caracterizando metaprogramação.

E Erradaerro: Conceitual

Acredita que a ideia central é a repetição de cálculos em laço para muitos pedidos, quando o texto trata da criação de um novo trecho executável, e não da iteração.

Raio-X da questão

Dificuldade Média
Bloom Lembrar
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✍️ situacional🧩 progressao
🎯 Conceito central

programa gera outro programa

📌 Objetivo

avaliacao

🧱 Pré-requisitos

conceitos básicos de programação · estrutura de programas

📚 Reveja

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

⚠️ Erro mais comum

Confundir geração automática de código com interpretação ou organização de código.

🤝 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.

🔎 Procurar outra questão

Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.

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.