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
- Projete e simule em pseudocódigo um algoritmo que recebe uma lista de tarefas semanais (cada tarefa: nome, duração em…
- Crie e simule um algoritmo em pseudocódigo que, dada uma sequência de tarefas onde cada tarefa tem duas variáveis…
- Desenvolva um algoritmo em pseudocódigo que, dada uma lista de tarefas diárias (cada tarefa tem nome e duração em…
- Projete um algoritmo em pseudocódigo que utilize um vetor (matriz unidimensional) de registros para gerenciar a escala…
- Descreva como você implementaria um programa que organiza uma lista de tarefas diárias, mencionando as estruturas de…
- Proponha uma decomposição em subtarefas e um esboço de pseudocódigo para automatizar um algoritmo que agenda horários de…
🔎 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
