Alternativa A
A questão apresenta um trecho de código em Python que define uma função recursiva para calcular o fatorial de um número e imprime o resultado dessa função para o valor 5.
Análise do Código
O código consiste em duas partes principais:
- Definição da Função (
fatorial):
- Verifica se o número
n é igual a 0. Se sim, retorna 1 (caso base da recursão). - Caso contrário, retorna
n multiplicado pelo resultado da função chamada para n - 1.
- Chamada da Função:
- O comando
print(fatorial(5)) executa a função passando o valor 5 como argumento.
Cálculo da Recursividade
Para entender o resultado, podemos expandir as chamadas da função passo a passo:
fatorial(5) chama 5 * fatorial(4)fatorial(4) chama 4 * fatorial(3)fatorial(3) chama 3 * fatorial(2)fatorial(2) chama 2 * fatorial(1)fatorial(1) chama 1 * fatorial(0)fatorial(0) retorna 1 (chegamos ao caso base)
Substituindo os valores de volta na cadeia de multiplicações:
\text{Resultado} = 5 \times 4 \times 3 \times 2 \times 1 \times 1
\text{Resultado} = 120
Tabela Comparativa dos Fatores
| Valor de n | Cálculo (n \times (n-1)!) | Resultado Parcial |
|---|
| 0 | Base | 1 |
| 1 | $1 \times 1$ | 1 |
| 2 | $2 \times 1$ | 2 |
| 3 | $3 \times 2$ | 6 |
| 4 | $4 \times 6$ | 24 |
| 5 | $5 \times 24$ | 120 |
Conclusão
O programa imprimirá na tela o valor 120, que corresponde à alternativa A.