Descreva com precisão o algoritmo e as estruturas de dados (registros, matrizes e listas) para um programa que…
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
Descreva com precisão o algoritmo e as estruturas de dados (registros, matrizes e listas) para um programa que recebe N turmas, cada turma com M alunos, calcula a média de cada aluno, a média por turma e a média geral; inclua pseudocódigo, definição de registros e análise de complexidade.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
Estruturas: Registro Aluno { nome, matricula, notas: vetor[K], media } Turma: lista<Aluno> Turmas: lista<Turma> Algoritmo (pseudocódigo): acumGlobal=0; totAlunos=0 para cada turma em Turmas: somaTurma=0 para cada aluno em turma: aluno.media = soma(aluno.notas)/len(aluno.notas) somaTurma += aluno.media mediaTurma = somaTurma / len(turma) acumGlobal += somaTurma totAlunos += len(turma) mediaGeral = acumGlobal / totAlunos Complexidade: O(A*K) onde A = total de alunos e K = notas por aluno. Justificativa: registros modelam atributos heterogêneos; listas permitem turmas com tamanhos variáveis; vetores guardam notas com acesso por índice; algoritmo percorre cada nota uma vez.
Explicação
A estrutura proposta utiliza registros para armazenar informações heterogêneas de cada aluno, listas para gerenciar turmas de tamanhos variáveis e vetores para armazenar as notas, permitindo acesso eficiente. O algoritmo calcula as médias de forma sequencial, garantindo que cada nota seja processada uma única vez, o que resulta em uma complexidade linear em relação ao número total de alunos e suas notas. Essa abordagem é eficiente e organizada, facilitando a manutenção e a compreensão do código.
Raio-X da questão
algoritmo e estruturas de dados
avaliacao
algoritmos e estruturas de dados · pseudocódigo e análise de complexidade
Revisar conceitos de algoritmos e estruturas de dados em programação.
O aluno pode descrever o algoritmo sem considerar a estrutura de dados adequada, dificultando a implementação do programa.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Elabore um algoritmo em pseudocódigo que, dado um vetor 'alunos' de registros onde cada registro tem campos 'nome'…
- Projete um algoritmo recursivo em pseudocódigo que, dada uma lista de registros 'alunos' onde cada registro tem campos…
- Descreva como decompor e generalizar a solução para um algoritmo que recebe como entrada uma lista de notas de alunos…
- Projete uma solução para armazenar informações de vários alunos (nome, matrícula e 3 notas) usando registros e depois…
- Proponha um algoritmo em pseudocódigo que, dado um conjunto de registros de alunos com campos (nome, notas[3], faltas)…
- Projete em pseudocódigo um algoritmo que recebe uma matriz de registros 'alunos' (linhas = turmas, colunas = posições)…
🔎 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
