Elabore em pseudocódigo um algoritmo que, dado um vetor de registros 'tarefas' (descricao, duracao_horas…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Construir e simular algoritmos, de forma independente ou em colaboração, que resolvam problemas simples e do cotidiano com uso de sequências, seleções condicionais e repetições de instruções.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Elabore em pseudocódigo um algoritmo que, dado um vetor de registros 'tarefas' (descricao, duracao_horas, prioridade) e um inteiro 'horas_por_dia', distribua as tarefas numa estrutura 'agenda' (lista de tarefas por dia) usando instruções sequenciais, de repetição e de seleção; descreva a estrutura de dados escolhida e como tratar tarefas com duracao_horas > horas_por_dia.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
Pseudocódigo: agenda ? lista de listas dia ? 1; tempo ? 0 para cada t em tarefas: se t.duracao_horas > horas_por_dia então dividir t em segmentos de no máximo horas_por_dia e alocar sequencialmente senão se tempo + t.duracao_horas = horas_por_dia então anexar t a agenda[dia]; tempo ? tempo + t.duracao_horas senão dia ? dia + 1; tempo ? 0; anexar t a agenda[dia]; tempo ? t.duracao_horas Estruturas: vetor de registros para 'tarefas' e lista de listas (matriz dinâmica) para 'agenda'. Tratamento de tarefas maiores: fragmentar em segmentos sequenciais. Complexidade aproximada: O(n).
Explicação
O pseudocódigo apresentado organiza as tarefas em uma agenda diária, respeitando o limite de horas por dia e tratando adequadamente as tarefas que excedem esse limite, fragmentando-as em partes menores. A utilização de uma lista de listas permite flexibilidade na alocação das tarefas, garantindo que cada dia possa conter uma quantidade variável de tarefas conforme necessário. A lógica sequencial, de repetição e de seleção é aplicada de forma eficiente, resultando em uma complexidade linear que é adequada para este tipo de problema.
Raio-X da questão
algoritmo em pseudocódigo
avaliacao
estrutura de dados · algoritmos em pseudocódigo
Revisar conceitos de estruturas de dados e controle de fluxo.
O aluno pode confundir a estrutura de dados a ser utilizada, optando por uma que não se adapta bem à distribuição das tarefas ao longo dos dias.
ciencia_tecnologia
criatividade
abstrato
Questões parecidas com resolução
- Crie e descreva um algoritmo, em linguagem simples ou pictográfica, que ajude uma criança a decidir se deve levar um…
- Crie um algoritmo em linguagem oral ou escrita que controle a rega de um vaso por 7 dias: diariamente verificar se…
- Projete em pseudocódigo um algoritmo que reconstrua uma mensagem a partir de pacotes recebidos onde cada pacote contém…
- Elabore em pseudocódigo um algoritmo que, dado um array de registros 'alunos' com campos (nome, notas[4]…
- Projete um algoritmo e descreva as estruturas de dados para implementar operações de desfazer/refazer (undo/redo) em um…
- Projete em pseudocódigo um algoritmo de triagem para uma fila digital cujas variáveis são prioridade (inteiro 1–5, 1 =…
🔎 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
