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

Em uma oficina de programação, os estudantes precisam calcular o fatorial de um número inteiro positivo. Uma…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13CO02

Explorar e construir a solução de problemas por meio de refinamentos, utilizando diversos níveis de abstração desde a especificação até a implementação.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Em uma oficina de programação, os estudantes precisam calcular o fatorial de um número inteiro positivo. Uma das soluções define o fatorial de n como n multiplicado pelo fatorial de n - 1, interrompendo o processo quando n chega a 1. Assim, a estrutura do algoritmo acompanha a definição matemática do problema. Outra solução utiliza um laço de repetição e uma variável acumuladora para realizar os mesmos cálculos. Considerando a situação apresentada, qual é a principal vantagem do uso da recursão nesse algoritmo?

  1. A) Executar os cálculos em menor tempo de processamento
  2. B) Eliminar a necessidade de um caso-base no algoritmo
  3. C) Representar o problema de forma próxima à definição matemática
  4. D) Garantir a ausência de estruturas de repetição no programa
  5. E) Utilizar menos memória durante todas as chamadas

✅ Resposta correta: alternativa C

Resolução passo a passo

  1. O enunciado descreve duas soluções para o fatorial. Na recursiva, fatorial de n é n multiplicado pelo fatorial de n - 1, e o processo para quando n chega a 1. Na iterativa, usa-se um laço e uma variável acumuladora.
  2. Pergunta-se qual é a principal vantagem da recursão nesse caso. O próprio enunciado indica que a estrutura do algoritmo acompanha a definição matemática do problema.
  3. Logo, a vantagem é representar o problema de forma próxima à definição matemática, alternativa C, que coincide com o gabarito oficial.
  4. A alternativa A está errada, pois a recursão não garante menor tempo de processamento; em geral, ela tem custo extra de chamadas de função.
  5. A alternativa B está errada, pois a recursão exige justamente um caso-base (n igual a 1) para interromper as chamadas.
  6. A alternativa D está errada, pois a solução recursiva dispensa laço de repetição, mas isso não é sua principal vantagem e não garante ausência de estruturas de repetição em geral.
  7. A alternativa E está errada, pois cada chamada recursiva ocupa espaço na pilha de execução, o que tende a usar mais memória, não menos.

💡 Dica: Relacione a estrutura recursiva com a definição matemática do fatorial.

Alternativa por alternativa

A Erradaerro: Senso comuma que mais engana

O aluno acha que a recursão é mais rápida por ser uma forma mais 'elegante' ou compacta de programar. Confunde clareza do código com desempenho.

Por que engana: O aluno pode confundir a representação mais próxima da definição matemática com vantagens de desempenho, como menor tempo ou menor uso de memória.

B Erradaerro: Conceitual

O aluno acredita que, por ser uma chamada que se repete, a recursão dispensa qualquer condição de parada. Desconhece que o caso-base é indispensável para evitar recursão infinita.

C Correta

A função recursiva expressa o fatorial por meio de uma chamada para uma versão menor do próprio problema, até alcançar o caso-base. Essa estrutura acompanha diretamente a definição matemática e pode tornar a solução mais clara e organizada. Isso não significa, necessariamente, que o algoritmo seja mais rápido ou use menos memória.

D Erradaerro: Interpretação

O aluno entende que a recursão substitui toda repetição, e por isso a vê como a grande vantagem de eliminar estruturas de repetição. Ignora que a vantagem está na correspondência com a definição matemática.

E Erradaerro: Conceitual

O aluno pensa que, como a recursão não usa variável acumuladora, ela economiza memória. Esquece que cada chamada fica empilhada na memória até o retorno.

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✍️ situacional🧩 consolidacao
🎯 Conceito central

Vantagem da recursão

📌 Objetivo

avaliacao

🧱 Pré-requisitos

Conceito de função recursiva · Definição matemática do fatorial

📚 Reveja

Revise como funções recursivas representam definições matemáticas e utilizam casos-base.

⚠️ Erro mais comum

O aluno pode confundir a representação mais próxima da definição matemática com vantagens de desempenho, como menor tempo ou menor uso de memória.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

tomada_decisao

🏫 Contexto

cientifico

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.