GeraProva GeraProva Provas com IA para professores do Brasil
Computação8º anoBNCC EF69CO04Média⏱ medio

Por que avisos sobre a subida de um rio chegam tarde a alguns moradores? Para responder a esse problema, a…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF69CO04

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

Por que avisos sobre a subida de um rio chegam tarde a alguns moradores? Para responder a esse problema, a Defesa Civil de um município planejou um programa que funcione a cada hora. O sistema deve receber as medições de três réguas eletrônicas, decidir se o nível exige atenção, alerta ou emergência, enviar a mensagem correspondente aos bairros próximos e guardar cada medição para consulta posterior. A mesma leitura será usada tanto na decisão do aviso quanto em um gráfico histórico. Além disso, as regras que definem os níveis de risco podem ser alteradas sem mudar o envio das mensagens. A equipe pretende organizar o código para corrigir ou atualizar uma parte sem precisar refazer todo o programa. Analise as tarefas previstas no texto e identifique a organização do programa que melhor permite automatizá-las e alterá-las separadamente.

  1. A) Criar uma rotina principal que leia os dados, decida o risco, envie mensagens e grave o histórico em um único bloco.
  2. B) Criar uma rotina para cada bairro, repetindo leitura, decisão de risco, envio de aviso e gravação do histórico.
  3. C) Criar uma rotina que envie todos os avisos antes de receber as medições e decidir o nível de risco.
  4. D) Criar uma rotina que mostre as medições na tela, deixando a decisão de risco e o registro para ação manual.
  5. E) Criar rotinas para ler medições, definir o risco, enviar avisos e gravar histórico, chamadas por uma rotina principal.

✅ Resposta correta: alternativa E

Resolução passo a passo

  1. O enunciado descreve quatro tarefas distintas que o programa precisa realizar a cada hora: receber as medições das réguas, decidir o nível de risco (atenção, alerta ou emergência), enviar as mensagens aos bairros e guardar as medições para consulta e gráfico. Além disso, as regras de risco devem poder mudar sem alterar o envio das mensagens, e a equipe quer corrigir ou atualizar partes separadamente.
  2. Para isso, a melhor organização é separar cada tarefa em uma rotina própria (leitura, decisão de risco, envio de avisos e gravação do histórico) e fazer uma rotina principal que apenas chama essas partes na ordem certa a cada hora. Assim, trocar a regra de decisão não exige mexer no envio de mensagens, e a mesma leitura pode ser usada tanto pelo aviso quanto pelo gráfico.
  3. Por que as outras estão erradas:
  4. A) Coloca tudo em um único bloco, o que dificulta alterar uma parte sem mexer nas demais.
  5. B) Repete a mesma lógica para cada bairro, duplicando código e tornando a manutenção mais trabalhosa, sem separar as tarefas.
  6. C) Envia avisos antes de ler as medições e decidir o risco, o que não faz sentido, pois não há informação para o aviso.
  7. D) Exige ação manual, contrariando a exigência de automação das tarefas.
  8. Conclusão: a alternativa E é a que melhor atende à automatização e à alteração independente de cada parte, por modularizar as tarefas e centralizar a coordenação em uma rotina principal.

💡 Dica: Identifique os módulos do programa e como eles podem ser organizados para facilitar alterações.

Alternativa por alternativa

A Erradaerro: Conceitual

O aluno acredita que concentrar todas as tarefas em um único bloco simplifica o programa, sem perceber que isso impede alterar as regras de risco separadamente do envio de mensagens.

B Erradaerro: Interpretação

O aluno entende que criar uma rotina por bairro organiza o sistema, sem notar que isso repete a mesma lógica várias vezes e não separa as tarefas pedidas.

C Erradaerro: Procedimental

O aluno inverte a ordem lógica do processo, supondo que o aviso possa ser enviado antes de existir uma medição e uma decisão de risco.

D Erradaerro: Interpretação

O aluno lê o enunciado como se a Defesa Civil quisesse apenas visualizar dados, ignorando que o texto pede envio automático de mensagens e decisão automática de risco.

E Correta

A solução decompõe o problema em tarefas relacionadas e automatiza seu encadeamento. A leitura pode alimentar risco e histórico.

Raio-X da questão

Dificuldade Média
Bloom Aplicar
Leitura medio
Discriminação medio
Peso pedagógico medio
Autonomia do enunciado completo
Cobertura da habilidade multipla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ situacional🧩 progressao
🎯 Conceito central

organização modular de programas

📌 Objetivo

diagnostico

🧱 Pré-requisitos

conceitos básicos de programação · modularização de código

📚 Reveja

estude modularização e separação de responsabilidades em programação

⚠️ Erro mais comum

Confundir organização modular com programação linear, dificultando alterações futuras.

🌎 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

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