Descreva, em pseudocódigo, um algoritmo que utilize uma matriz de registros 'turma' (linhas = fileiras…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Identificar as principais formas de organizar e representar a informação de maneira estruturada (matrizes, registros, listas e grafos) ou não estruturada (números, palavras, valores verdade).
Fonte: Base Nacional Comum Curricular (MEC).Questão
Descreva, em pseudocódigo, um algoritmo que utilize uma matriz de registros 'turma' (linhas = fileiras, colunas = lugares) onde cada registro tem campos: idAluno, nome, presencas[20]. Explique como usar variáveis e índices para marcar presença na aula k e calcular a porcentagem de presença por aluno.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
Resposta-modelo (pseudocódigo e explicação): // Estruturas inteiro L = numFileiras inteiro C = numColunas inteiro AULAS = 20 registro turma[L][C] // cada elemento: idAluno, nome, presencas[AULAS] // Inicializar presencas com 0 para i de 0 até L-1: para j de 0 até C-1: para a de 0 até AULAS-1: turma[i][j].presencas[a] = 0 // Marcar presença na aula k (0 = k < AULAS) procedimento marcarPresenca(k): para i de 0 até L-1: para j de 0 até C-1: se alunoPresente(i,j) então turma[i][j].presencas[k] = 1 senao turma[i][j].presencas[k] = 0 // Calcular porcentagem de presença para cada aluno procedimento calcularPorcentagens(): para i de 0 até L-1: para j de 0 até C-1: soma = 0 para a de 0 até AULAS-1: soma = soma + turma[i][j].presencas[a] porcentagem = (soma / AULAS) * 100 imprimir(turma[i][j].idAluno, porcentagem) Explicação dos elementos principais: - Variáveis i,j são índices das dimensões da matriz; a é índice da disciplina de presenças; k representa a aula atual. - O campo presencas é um vetor dentro do registro para armazenar dados binários (1/0) por aula. - Ao marcar presença, atualiza-se apenas presencas[k] do registro correspondente. - A complexidade de marcar uma aula é O(L*C); calcular todas as porcentagens também requer O(L*C*AULAS). - Validar k e inicializar presencas evita leitura fora do vetor; idAluno funciona como identificador único ao imprimir resultados.
Explicação
A solução apresentada utiliza uma estrutura de dados adequada para armazenar informações sobre a presença dos alunos, garantindo que cada aluno tenha um registro individual. O algoritmo implementa de forma clara as operações de marcar presença e calcular porcentagens, utilizando loops aninhados para percorrer a matriz e os registros. A lógica de atualização e cálculo é eficiente e respeita as limitações de índices, assegurando a integridade dos dados.
Raio-X da questão
matriz de registros
avaliacao
matrizes e registros · pseudocódigo e algoritmos
Revisar conceitos de matrizes e algoritmos em pseudocódigo.
O aluno pode confundir a estrutura de uma matriz com um vetor, não utilizando corretamente os índices para acessar os registros.
ciencia_tecnologia
criatividade
abstrato
Questões parecidas com resolução
- Projete um algoritmo em pseudocódigo que receba uma matriz de registros 'presenca' (linhas = alunos, colunas = dias) com…
- Um colégio registra presença de N alunos em D dias. Cada registro inclui campos (id_aluno, dia, presente). Descreva com…
- Descreva, em pseudocódigo, um algoritmo que receba uma matriz de registros 'registro' (linhas = alunos, colunas =…
- Projete um registro para armazenar informações de um aluno (nome, matrícula, notas em 3 disciplinas) e descreva um…
- Projete um algoritmo em pseudocódigo que receba uma matriz 'turma' onde cada linha é um registro [id, notas[3], faltas]…
- Proponha um algoritmo em pseudocódigo que, dado um conjunto de registros de alunos com campos (nome, notas[3], faltas)…
Todas as questões de Organização e representação da informaçã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
