Considere uma função recursiva que retorna o fatorial de um número. Qual é a base da recursão normalmente…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Elaborar algoritmos que envolvam instruções sequenciais, de repetição e de seleção usando uma linguagem de programação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Considere uma função recursiva que retorna o fatorial de um número. Qual é a base da recursão normalmente utilizada para essa função?
- A) fatorial(0) = 1
- B) fatorial(1) = 0
- C) fatorial(n) = n-1
- D) fatorial(n) = n*1
- E) fatorial(1) = n
✅ Resposta correta: alternativa A
Resolução passo a passo
- Em uma função recursiva, a base da recursão é o caso de parada, isto é, o caso em que a função devolve um valor diretamente, sem chamar a si mesma. Isso impede que a recursão continue indefinidamente.
- Para o fatorial, a definição usual é n! = n * (n-1)!, com a convenção 0! = 1. A parte recursiva é n * fatorial(n-1), e o caso base é fatorial(0) = 1.
- Analisando as alternativas. A alternativa A, fatorial(0) = 1, é exatamente o caso base usual e está correta. A alternativa B está errada, pois fatorial(1) é 1, e não 0. A alternativa C está errada, pois é uma regra recursiva incorreta (deveria ser n * fatorial(n-1), não n-1). A alternativa D está errada, pois n*1 não define o fatorial e ainda não tem caso de parada. A alternativa E está errada, pois fatorial(1) deve valer 1, e não depender de n.
- Conclusão: o gabarito A está correto. Também é válido usar fatorial(1) = 1 como base, mas essa opção não aparece entre as alternativas.
💡 Dica: Lembre-se da definição do fatorial e da condição de parada.
Alternativa por alternativa
Essa é a base da recursão, pois fatorial de 0 é definido como 1.
O aluno pode ter confundido o valor do fatorial de 1 com o de 0, achando que fatorial(1) deve ser zero, talvez por associar qualquer caso inicial a zero.
Por que engana: Confundir a condicao base da recursao, escolhendo valores incorretos para fatorial(0) ou fatorial(1).
O aluno pode ter tentado escrever a regra recursiva como uma simples redução de n em 1, sem o produto, confundindo fatorial com uma contagem decrescente.
O aluno pode ter achado que multiplicar n por 1 representa o fatorial, sem perceber que a expressão não reduz o problema nem tem caso de parada.
O aluno pode ter interpretado o caso base como a própria entrada n, supondo que o resultado para 1 dependa do valor de n, em vez de ser uma constante.
Raio-X da questão
função recursiva
avaliacao
conceito de funcao recursiva · definicao de fatorial
Revisar a definição de fatorial e suas propriedades.
Confundir a condicao base da recursao, escolhendo valores incorretos para fatorial(0) ou fatorial(1).
pensamento_critico
abstrato
Questões parecidas com resolução
- Como uma função recursiva pode ser utilizada para calcular o fatorial de um número?
- Qual das seguintes alternativas é um exemplo de recursão em uma função que calcula o fatorial de um número?
- Qual alternativa representa uma função recursiva correta que calcula o fatorial de um número?
- Identifique a função recursiva correta para calcular o fatorial de um número n.
- A função recursiva abaixo calcula fatorial. Qual é a condição base? fatorial(n) = 1 se n = 0; fatorial(n) = n *…
- Descreva um algoritmo para calcular o fatorial de um número utilizando 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
