Projete em pseudocódigo uma função recursiva remover_unicos(L) que recebe uma lista L de inteiros e retorna…
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
Projete em pseudocódigo uma função recursiva remover_unicos(L) que recebe uma lista L de inteiros e retorna uma nova lista que mantém apenas a primeira ocorrência de cada valor, preservando a ordem original. Use apenas operações básicas de lista (vazio, primeiro, resto, concatenar) e sem estruturas auxiliares externas.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
funcao remover_unicos(L): se L == [] entao retorne [] senao: x <- primeiro(L) resto_limpo <- remover_todas(x, resto(L)) retorne concatenar([x], remover_unicos(resto_limpo)) funcao remover_todas(val, L): se L == [] entao retorne [] se primeiro(L) == val entao retorne remover_todas(val, resto(L)) senao retorne concatenar([primeiro(L)], remover_todas(val, resto(L)))
Explicação
A função `remover_unicos` utiliza recursão para processar cada elemento da lista, garantindo que apenas a primeira ocorrência de cada valor seja mantida. A função auxiliar `remover_todas` é responsável por eliminar todas as ocorrências subsequentes de um valor específico, preservando a ordem dos elementos. Juntas, essas funções permitem a construção de uma nova lista que atende aos requisitos do problema sem o uso de estruturas auxiliares externas.
Raio-X da questão
função recursiva
fixacao
funções recursivas · listas em pseudocódigo
Revisar conceitos de recursão e manipulação de listas em pseudocódigo.
O aluno pode confundir a lógica de remoção, mantendo elementos que não deveriam ser preservados na lista final.
ciencia_tecnologia
criatividade
abstrato
Questões parecidas com resolução
- Crie e descreva um algoritmo, em linguagem simples ou pictográfica, que ajude uma criança a decidir se deve levar um…
- Crie um algoritmo em linguagem oral ou escrita que controle a rega de um vaso por 7 dias: diariamente verificar se…
- Projete em pseudocódigo um algoritmo que reconstrua uma mensagem a partir de pacotes recebidos onde cada pacote contém…
- Elabore em pseudocódigo um algoritmo que, dado um vetor de registros 'tarefas' (descricao, duracao_horas, prioridade) e…
- Elabore em pseudocódigo um algoritmo que, dado um array de registros 'alunos' com campos (nome, notas[4]…
- Projete um algoritmo e descreva as estruturas de dados para implementar operações de desfazer/refazer (undo/redo) em um…
🔎 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
