GeraProva GeraProva Provas com IA para professores do Brasil
Computação3ª sérieBNCC EM13CO01Média⏱ curto

Para que serve a recursão em programação?

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13CO01

Explorar e construir a solução de problemas por meio da reutilização de partes de soluções existentes.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Para que serve a recursão em programação?

  1. A) Para criar listas.
  2. B) Para resolver problemas complexos.
  3. C) Para armazenar dados.
  4. D) Para otimizar o código.
  5. E) Para evitar listas.

✅ Resposta correta: alternativa B

Resolução passo a passo

  1. Recursão é a técnica em que uma função chama a si mesma para resolver uma versão menor do mesmo problema, até chegar a um caso base que encerra as chamadas.
  2. Ao dividir um problema complexo em subproblemas semelhantes menores, a recursão permite escrever soluções elegantes e claras para tarefas como percorrer árvores, calcular fatorial, ordenar dados (como quicksort) ou explorar labirintos.
  3. Portanto, a alternativa B, 'Para resolver problemas complexos', é a que melhor descreve o papel da recursão, e concorda com o gabarito oficial.
  4. A alternativa A está errada, pois criar listas é uma tarefa que não depende da recursão; listas podem ser criadas com laços ou atribuições simples.
  5. A alternativa C está errada, pois armazenar dados é função de variáveis, estruturas de dados e memória, não da recursão.
  6. A alternativa D está errada, pois a recursão costuma gastar mais memória (pilha de chamadas) e não é uma técnica de otimização em si; pode até tornar o código mais lento.
  7. A alternativa E está errada, pois a recursão não tem relação com evitar listas; ela pode ser usada com ou sem listas.

💡 Dica: Pense em exemplos de uso de recursão.

Alternativa por alternativa

A Erradaerro: Conceitual

O aluno associa recursão à construção de estruturas de dados, achando que a técnica existe para gerar listas.

B Correta

Recursão permite a resolução de problemas que podem ser divididos em subproblemas.

C Erradaerro: Conceitual

O aluno confunde recursão com armazenamento, imaginando que chamadas repetidas guardam dados, quando o armazenamento é feito por variáveis e estruturas de dados.

D Erradaerro: Senso comuma que mais engana

O aluno supõe que qualquer repetição ou reaproveitamento de chamadas torna o código mais eficiente, quando a recursão frequentemente consome mais memória e tempo.

Por que engana: Confundir recursao com criacao de listas ou armazenamento de dados, nao entendendo que recursao e uma tecnica para resolver problemas complexos.

E Erradaerro: Interpretação

O aluno interpreta mal a alternativa e acredita que recursão serve para substituir ou eliminar o uso de listas, o que não corresponde ao conceito.

Raio-X da questão

Dificuldade Média
Leitura baixo
Discriminação medio
Peso pedagógico medio
Autonomia do enunciado completo
Cobertura da habilidade unica
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ direta🧩 consolidacao
🎯 Conceito central

recursão em programação

📌 Objetivo

avaliacao

🧱 Pré-requisitos

conceito de funcao · estrutura de controle

📚 Reveja

Revisar o conceito de recursão e suas aplicações em algoritmos.

⚠️ Erro mais comum

Confundir recursao com criacao de listas ou armazenamento de dados, nao entendendo que recursao e uma tecnica para resolver problemas complexos.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de [CONFERIR] Construir soluções baseadas no uso de algoritmos e conceitos da Computação para resolver problemas, avaliando suas qualidades e melhorando-as.

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