GeraProva GeraProva Provas com IA para professores do Brasil
Computação9º anoBNCC EF69CO06Difícil⏱ longo

Projete um algoritmo generalizado para escalonar tarefas de diferentes instâncias (estudo, trabalho…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF69CO06

Comparar diferentes casos particulares (instâncias) de um mesmo problema, identificando as semelhanças e diferenças entre eles, e criar um algoritmo para resolver todos, fazendo uso de variáveis (parâmetros) para permitir o tratamento de todos os casos de forma genérica.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Projete um algoritmo generalizado para escalonar tarefas de diferentes instâncias (estudo, trabalho, manutenção) que use variáveis/parâmetros para prioridade, duração e estratégia de ordenação. Descreva como aplicar decomposição, generalização e reúso para tratar qualquer instância.

✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.

Resposta esperada

Sugestão de assinatura: schedule(tasks, comparator, weight_fn, tie_breaker) - tasks: coleção de registros {id,duração,deadline,prioridade,meta} - comparator: parâmetro que escolhe estratégia ('earliest_deadline','weighted_priority','shortest_job') - weight_fn: função parâmetro que calcula peso = f(prioridade,duração,deadline) Decomposição: 1) pré-processar tarefas (normalizar prioridades via weight_fn), 2) aplicar filtro/opcional agrupamento por recurso, 3) ordenar usando comparator que chama weight_fn, tie_breaker resolve empates (ex.: menor duração). Generalização: parâmetros comparator e weight_fn tornam o mesmo algoritmo aplicável a instâncias distintas sem mudar a implementação interna. Reúso: implementar comparadores e weight_fn como módulos reutilizáveis; testar com diferentes instâncias (escola, serviço, manutenção). Complexidade: ordenar O(n log n); pré-processamento O(n). Saída: lista de tarefas ordenadas e métricas (makespan, atraso total).

Explicação

A proposta apresentada utiliza uma abordagem modular que permite adaptar o algoritmo a diferentes contextos, garantindo flexibilidade e eficiência. A decomposição das etapas facilita a implementação e a manutenção do código, enquanto a generalização e o reúso promovem a reutilização de componentes, aumentando a escalabilidade do sistema. Além disso, a análise de complexidade demonstra que o algoritmo é eficiente, o que é crucial para o escalonamento de tarefas em cenários reais.

Raio-X da questão

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

algoritmo de escalonamento

📌 Objetivo

avaliacao

🧱 Pré-requisitos

algoritmos e estruturas de dados · decomposição de problemas

📚 Reveja

Revisar conceitos de algoritmos e suas aplicações em diferentes contextos.

⚠️ Erro mais comum

O aluno pode falhar ao não considerar a importância da prioridade na ordenação das tarefas, resultando em um algoritmo ineficiente.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de Estratégias de solução de problemas - Generalizaçã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.