Proponha um algoritmo em pseudocódigo que leia uma lista de nomes e idades, remova duplicatas, conte quantos…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Criar e simular algoritmos representados em linguagem oral, escrita ou pictográfica, que incluam sequências, repetições e seleções condicionais para resolver problemas de forma independente e em colaboração.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Proponha um algoritmo em pseudocódigo que leia uma lista de nomes e idades, remova duplicatas, conte quantos têm menos de 12 anos e gere um relatório por faixas etárias; explique como usa variáveis, laços e estruturas de dados para evitar duplicação.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
Pseudocódigo: leia lista_de_registros // cada registro tem nome, idade nomes_unicos <- conjunto vazio contador_menor12 <- 0 faixas <- dicionário {"0-5":0, "6-11":0, "12+":0} para cada registro em lista_de_registros faça nome <- trim(registro.nome) idade <- registro.idade se nome não em nomes_unicos então adicionar nome a nomes_unicos se idade < 12 então contador_menor12 <- contador_menor12 + 1 se idade <= 5 então faixas["0-5"] <- faixas["0-5"] + 1 senão se idade <= 11 então faixas["6-11"] <- faixas["6-11"] + 1 senão faixas["12+"] <- faixas["12+"] + 1 fim para imprimir "Menores de 12: " + contador_menor12 imprimir "Relatório por faixas: " + faixas Explicação do uso de elementos: - Variáveis: armazenam contadores (contador_menor12) e referências a estruturas (nomes_unicos, faixas). - Laços: percorrem cada registro da lista uma vez para eficiência O(n). - Estruturas de dados: usar um conjunto (conjunto/set) para nomes_unicos evita duplicatas porque um set não aceita repetição; o dicionário (map) guarda contadores por faixa etária, simplificando agregação. - A combinação de verificação em conjunto antes de incrementar contadores garante que nomes repetidos não aumentem as contagens, evitando duplicação no relatório.
Explicação
A solução utiliza um conjunto para garantir que os nomes sejam únicos, evitando contagens duplicadas. O uso de um dicionário permite categorizar as idades de forma eficiente, facilitando a geração do relatório por faixas etárias. A estrutura de laços garante que cada registro seja processado uma única vez, otimizando a performance do algoritmo.
Raio-X da questão
algoritmo em pseudocódigo
avaliacao
estruturas de dados · laços de repetição
Revisar conceitos de variáveis, laços e estruturas de dados.
O aluno pode falhar em implementar corretamente a remoção de duplicatas, utilizando uma abordagem ineficiente que não considera a estrutura de dados adequada.
ciencia_tecnologia
criatividade
abstrato
Questões parecidas com resolução
- Descreva em pseudocódigo um algoritmo que recebe um conjunto de registros de alunos (nome, idade em anos, nota final com…
- Projete um algoritmo em pseudocódigo que receba uma lista de nomes de alunos (entrada de dados) e retorne uma lista de…
- Proponha uma decomposição em subtarefas e escreva um esboço de pseudocódigo para um algoritmo que identifica e agrupa…
- Projete um algoritmo em pseudocódigo que receba uma lista de registros de alunos (campos: nome, idade, nota) como dado…
- Projete em pseudocódigo um algoritmo que receba uma lista de nomes de alunos (dados) e retorne a mesma lista sem…
- Problema de programação: dada uma lista de nomes, crie um programa que conte a frequência de cada nome e apresente em…
🔎 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
