🎯 Saiba o que estudar

Avançado com Treinador a partir de R$ 0,76/dia

Considere a seguinte função recursiva em pseudocódigo:funçã...

Próximas questões
Com base no mesmo assunto
Q4197621 Algoritmos e Estrutura de Dados

Considere a seguinte função recursiva em pseudocódigo:


função fatorial(n: inteiro) -> inteiro:

 se n = 0 ou n = 1 então

       retornar 1

 senão

       retornar n * fatorial(n - 1)

 fim se


Com base na análise da função, assinale a alternativa que apresenta o resultado da chamada da função fatorial(5). 

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: D

Fundamento decisivo: O dado decisivo era aplicar a regra recursiva dada no enunciado à chamada fatorial(5) até alcançar o caso-base; a expansão resulta em 5×4×3×2×1 = 120, o que fixa o gabarito em D.

Tema central: função recursiva fatorial
Análise das alternativas
A
Errada
Incorreta. O valor 5 corresponde apenas ao valor inicial de n, mas a função não retorna n diretamente quando n=5; ela exige multiplicar 5 pelo resultado de fatorial(4).
B
Errada
Incorreta. O valor 10 representa multiplicação parcial e interrompe a recursão antes da expansão completa. Pela definição da função, o cálculo deve seguir até o caso-base e considerar 5×4×3×2×1.
C
Errada
Incorreta. O valor 20 também resulta de produto parcial incompatível com a regra recursiva apresentada. Para n=5, o retorno depende de todas as multiplicações sucessivas até fatorial(1).
D
Certa
A alternativa D está correta porque a função implementa o cálculo de fatorial: para n=0 ou n=1, retorna 1; para n>1, retorna n multiplicado por fatorial(n-1). Aplicando esse procedimento à chamada pedida, o resultado é o produto sucessivo até o caso-base, produzindo 120.
Pegadinha da questão
A confusão real era parar a multiplicação antes de chegar ao caso-base ou tratar a função como se devolvesse apenas o valor inicial ou um produto parcial.
Dica para questões semelhantes
  • Em função recursiva, identifique primeiro o caso-base e depois aplique a regra de chamada até alcançá-lo.
  • Quando a questão pede o valor de uma chamada específica, expanda a execução passo a passo pela própria definição da função.
  • Elimine alternativas que representem apenas o valor inicial ou resultados parciais da recursão.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo