Crie funções para calcular:
Permutação P(n)

Passo 1

O enunciado pede para criarmos funções que calculem a permutação P(n), ou seja, o número de maneiras de ordenar n elementos. Isso está dentro do conteúdo de análise combinatória, e para resolvermos precisamos da definição de fatorial, já que P(n)=n!.

Passo 2

Vamos primeiro relembrar a definição de fatorial. Dizemos que
0! = 1
e para n ≥ 1
n! = n cdot (n-1)!
Essa definição recursiva nos dá base para implementar a função.

Passo 3

Uma forma de implementar o fatorial é via recursão. Em Python, por exemplo, faríamos:
def factorial(n):
    if n == 0:
        return 1
    return n * factorial(n-1)
Aqui, a função chama a si mesma até chegar a 0, retornando 1, e vai subindo multiplicando cada n.

Passo 4

Agora que temos n!, definimos a função de permutação P(n) simplesmente chamando o fatorial. Em Python:
def permutation(n):
    return factorial(n)
Assim, P(n) = n! fica encapsulado nessa função.

Passo 5

Se quisermos uma versão iterativa (sem recursão), podemos escrever o fatorial assim:
def factorial_iterative(n):
    result = 1
    for i in range(1, n+1):
        result *= i
    return result
E a permutação continua:
def permutation_iterative(n):
    return factorial_iterative(n)

Resposta

Versão recursiva

def factorial(n):
if n == 0:
return 1
return n * factorial(n-1)
def permutation(n):
return factorial(n)

Versão iterativa

def factorial_iterative(n):
result = 1
for i in range(1, n+1):
result *= i
return result
def permutation_iterative(n):
return factorial_iterative(n)

Exercícios relacionados