GeraProva GeraProva Provas com IA para professores do Brasil
Computação6º anoBNCC EF06CO04Difícil⏱ medio

— Se chegarem novos tipos de objetos, vou precisar copiar tudo outra vez? — perguntou Joana, que ajuda no…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF06CO04

Construir soluções de problemas usando a técnica de decomposição e automatizar tais soluções usando uma linguagem de programação.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

— Se chegarem novos tipos de objetos, vou precisar copiar tudo outra vez? — perguntou Joana, que ajuda no ponto de empréstimo de livros, jogos e ferramentas do bairro. O programa usado no local possui três blocos: um para cada tipo de objeto. Em todos eles, o sistema lê o nome de quem pegou o item e a data combinada, monta um aviso de devolução, envia a mensagem e registra o envio. Quando a data já passou, o sistema também inclui o nome em uma lista para a equipe entrar em contato. Os três blocos têm as mesmas etapas; mudam apenas os dados de cada empréstimo. Como o ponto receberá outros tipos de objetos, o grupo quer reorganizar o programa sem deixar de tratar os atrasos. Identifique a reorganização do programa que permite automatizar as etapas comuns e atender a novos tipos de objetos sem copiar blocos completos.

  1. A) Organizar um procedimento apenas para salvar o registro, deixando a montagem e o envio do aviso em cada categoria.
  2. B) Organizar blocos por categoria e copiar as etapas completas quando surgir um novo tipo de item.
  3. C) Organizar um procedimento separado para cada tipo de item, repetindo nele todas as etapas de aviso e registro.
  4. D) Organizar um procedimento único com nome, item e data como entradas, incluindo a verificação de atraso em todos os empréstimos.
  5. E) Organizar um procedimento sem a verificação de atraso para que todos os avisos sigam o mesmo caminho.

✅ Resposta correta: alternativa D

Resolução passo a passo

  1. Identifique o problema. Os três blocos repetem as mesmas etapas (ler nome e data, montar aviso, enviar, registrar envio e, se a data passou, incluir na lista de atrasos). Só mudam os dados de cada empréstimo. Para atender novos tipos de objetos sem copiar blocos, a etapa comum precisa ficar em um único lugar.
  2. Analise a reorganização correta. A alternativa D cria um procedimento único que recebe nome, item e data como entradas. Assim, qualquer novo tipo de objeto apenas fornece seus dados ao mesmo procedimento, sem nova cópia do código. Além disso, a verificação de atraso fica dentro do procedimento, então todos os empréstimos continuam tratando os atrasos, como exige o enunciado.
  3. Por que as outras estão erradas.
  4. A: deixar a montagem e o envio em cada categoria mantém a repetição que se quer eliminar.
  5. B: copiar as etapas completas a cada novo tipo é exatamente o problema apontado por Joana.
  6. C: um procedimento por tipo de item repete todas as etapas, criando o mesmo retrabalho.
  7. E: retirar a verificação de atraso elimina um requisito explícito do enunciado, que o grupo quer manter.
  8. Conclusão. A reorganização que automatiza as etapas comuns, aceita novos tipos apenas com novos dados e preserva o tratamento de atrasos é a alternativa D, que coincide com o gabarito oficial.

💡 Dica: Identifique a parte comum do programa e pense em como automatizá-la para novos tipos de objetos.

Alternativa por alternativa

A Erradaerro: Conceitual

O aluno entendeu que basta centralizar apenas o registro, deixando o aviso e o envio separados por categoria, o que mantém a duplicação das etapas comuns.

B Erradaerro: Interpretação

O aluno aceitou organizar por categoria e copiar as etapas completas a cada novo tipo, sem perceber que a cópia é justamente o problema a ser resolvido.

C Erradaerro: Conceitual

O aluno imaginou que separar um procedimento por tipo de item já organiza o programa, sem notar que todas as etapas continuam repetidas em cada um.

D Correta

O procedimento reúne as etapas repetidas e usa dados de entrada diferentes. Assim, serve aos itens atuais e aos novos, mantendo o tratamento dos atrasos.

E Erradaerro: Interpretação

O aluno pensou que simplificar o fluxo removendo a checagem de atraso tornaria o programa mais genérico, ignorando que o enunciado exige manter o tratamento dos atrasos.

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✍️ situacional🧩 progressao
🎯 Conceito central

reuso de código e abstração

📌 Objetivo

diagnostico

🧱 Pré-requisitos

conceitos básicos de programação · estrutura de controle e funções

📚 Reveja

estude conceitos de modularização e reutilização de código em programação

⚠️ Erro mais comum

confundir a necessidade de copiar código com a possibilidade de reutilização por meio de funções ou módulos.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cotidiano

Questões parecidas com resolução

Todas as questões de Estratégias de solução de problemas - Decomposição

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