GeraProva GeraProva Provas com IA para professores do Brasil
Computação8º anoBNCC EF08CO01Média⏱ curto

Para resolver um problema usando recursão, qual é o principal requisito da função recursiva?

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF08CO01

Construir soluções de problemas usando a técnica de recursão e automatizar tais soluções usando uma linguagem de programação.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Para resolver um problema usando recursão, qual é o principal requisito da função recursiva?

  1. A) Variáveis globais
  2. B) Iteração
  3. C) Condição base
  4. D) Complexidade alta
  5. E) Limite de chamadas

✅ Resposta correta: alternativa C

Resolução passo a passo

  1. Recursão é a técnica em que uma função resolve um problema chamando a si mesma com uma entrada menor, até chegar a um caso simples que pode ser respondido diretamente.
  2. Para que essas chamadas sucessivas terminem, a função precisa de uma condição base, isto é, um caso de parada em que ela retorna um valor sem fazer novas chamadas.
  3. Sem a condição base, a função chamaria a si mesma indefinidamente, causando estouro de pilha (stack overflow). Por isso, a condição base é o requisito essencial.
  4. A alternativa A está errada, pois recursão não exige variáveis globais; o estado pode ser passado por parâmetros.
  5. A alternativa B está errada, pois iteração é outra técnica de repetição (laços como for e while), não um requisito da recursão.
  6. A alternativa D está errada, pois complexidade alta é uma característica possível de algumas soluções, não um requisito da função.
  7. A alternativa E está errada, pois o limite de chamadas é consequência do problema de parada, não o requisito principal; o que garante o término é a condição base.
  8. Conclusão: o gabarito C está correto, pois a condição base é o principal requisito de qualquer função recursiva.

💡 Dica: Identifique o requisito fundamental da recursão.

Alternativa por alternativa

A Erradaerro: Conceitual

O aluno pode imaginar que a função recursiva precisa armazenar o estado em variáveis globais para acompanhar as chamadas, confundindo recursão com uso de estado compartilhado.

B Erradaerro: Conceitual

O aluno pode associar recursão a repetição e achar que iteração é o requisito, sem perceber que iteração é uma técnica alternativa e não uma exigência da recursão.

C Correta

Uma condição base é essencial para que a função recursiva termine.

D Erradaerro: Senso comum

O aluno pode supor que a recursão só é válida quando o algoritmo é complexo, confundindo uma característica eventual da solução com um requisito da função.

E Erradaerro: Conceituala que mais engana

O aluno pode confundir o limite de chamadas, que é um efeito do término, com o mecanismo que realmente garante o fim das chamadas, que é a condição base.

Por que engana: Confundir a necessidade da condição base para evitar chamadas infinitas com outros conceitos como iteracao ou variaveis globais.

Raio-X da questão

Dificuldade Média
Leitura medio
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

função recursiva

📌 Objetivo

avaliacao

🧱 Pré-requisitos

conceito de funcao · conceito de condicao base

📚 Reveja

Revisar os conceitos de recursão e suas características.

⚠️ Erro mais comum

Confundir a necessidade da condição base para evitar chamadas infinitas com outros conceitos como iteracao ou variaveis globais.

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de Programação - Programação com listas e recursã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

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.