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

Projete um algoritmo em pseudocódigo que converta uma matriz 'horarios' de dimensão D×H (dias × horários) em…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF06CO02

Elaborar algoritmos que envolvam instruções sequenciais, de repetição e de seleção usando uma linguagem de programação.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Projete um algoritmo em pseudocódigo que converta uma matriz 'horarios' de dimensão D×H (dias × horários) em uma lista de registros [dia, hora, ocupado], preservando a ordem linha-por-linha e incluindo apenas células marcadas como true (ocupado). Explique o pseudocódigo e sua complexidade.

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

Resposta esperada

Entrada: matriz horarios[D][H] (booleano). Saída: lista registros. Algoritmo: lista <- [] para dia de 0 até D-1 faça para hora de 0 até H-1 faça se horarios[dia][hora] == true então registro <- {dia: dia, hora: hora, ocupado: true} append(lista, registro) retornar lista Observações: o algoritmo percorre a matriz em ordem linha-por-linha (dia crescente, horas em sequência), preservando a ordem original. Complexidade: O(D×H) em tempo e O(k) em espaço adicional, onde k é o número de células true (no pior caso k = D×H).

Explicação

O algoritmo percorre cada elemento da matriz, verificando se é verdadeiro, e registra apenas os dias e horários ocupados, garantindo que a ordem original seja mantida. A complexidade de tempo O(D×H) é justificada pelo fato de que cada célula da matriz é acessada uma vez, enquanto a complexidade de espaço O(k) se refere ao armazenamento dos registros apenas para as células ocupadas. Essa abordagem é eficiente e direta, atendendo aos requisitos da questão.

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 em pseudocódigo

📌 Objetivo

avaliacao

🧱 Pré-requisitos

matrizes e arrays · lógica de programação

📚 Reveja

Revisar conceitos de matrizes e estruturas de dados.

⚠️ Erro mais comum

O aluno pode confundir a estrutura de repetição necessária para percorrer a matriz, resultando em uma lista incompleta ou incorreta.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de Programação - Linguagem de programaçã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.