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

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

Habilidade BNCC EF15CO02

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

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

função recursiva

📌 Objetivo

fixacao

🧱 Pré-requisitos

funções recursivas · listas em pseudocódigo

📚 Reveja

Revisar conceitos de recursão e manipulação de listas em pseudocódigo.

⚠️ Erro mais comum

O aluno pode confundir a lógica de remoção, mantendo elementos que não deveriam ser preservados na lista final.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

criatividade

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de Algoritmos

🔎 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.