Matemática Múltipla Escolha

Observe a função print do código escrito em Python a seguir: def foo(n): if n > 1: return n * foo(n-1) return n print(foo(4)) Qual o resultado impresso por essa função?

Observe a função print do código escrito em Python a seguir:

def foo(n):
if n > 1:
return n * foo(n-1)
return n

print(foo(4))

Qual o resultado impresso por essa função?

  1. 4
  2. 16
  3. 24
  4. 20
  5. 32

Resolução completa

Explicação passo a passo

C
Alternativa C

Introdução

A função foo(n) é uma implementação recursiva do fatorial de um número.

Desenvolvimento

O fatorial de um número inteiro não negativo é o produto de todos os inteiros positivos até ele. Por exemplo, 4! = 4 × 3 × 2 × 1 = 24.

Análise

  • A função verifica se n > 1. Se sim, retorna **n * foo(n-1)** (chamada recursiva).
  • Se n == 1, retorna n (caso base, que é 1).
  • Para foo(4):
  • foo(4) = 4 * foo(3)
  • foo(3) = 3 * foo(2)
  • foo(2) = 2 * foo(1)
  • foo(1) = 1 (caso base)
  • Substituindo: foo(2) = 2 * 1 = 2
  • foo(3) = 3 * 2 = 6
  • foo(4) = 4 * 6 = 24

Conclusão

O resultado impresso é 24.

Alternativa C.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Matemática

Ver mais Matemática resolvidas

Tem outra questão de Matemática?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.