Você está na página 1de 18

Universidade Federal do Espírito Santo - UFES

Centro Universitário do Norte do Espírito Santo - CEUNES


Departamento de Computação e Eletrônica - DCEL

Recursividade
Ícaro Henrique Honorato
Data: 10/05/2018
O que é?
O que é?
O que é?

Recursão consiste em:

Utilizar uma função como parte da definição dessa mesma
função.
O que é?

Recursão consiste em:

Utilizar uma função como parte da definição dessa mesma
função.

Um método de resolução de problemas que envolve dividir
um problema em subproblemas menores até chegar a um
problema pequeno o suficiente para que este seja resolvido
trivialmente:

Casos Simples;

Casos Gerais.
O que é?
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4)
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4)
– 4! = 4.3! → fat(4) = 4.fat(3)
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4)
– 4! = 4.3! → fat(4) = 4.fat(3)
– 3! = 3.2! → fat(3) = 3.fat(2)
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4)
– 4! = 4.3! → fat(4) = 4.fat(3)
– 3! = 3.2! → fat(3) = 3.fat(2)
– 2! = 2.1! → fat(2) = 2.fat(1)
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4)
– 4! = 4.3! → fat(4) = 4.fat(3)
– 3! = 3.2! → fat(3) = 3.fat(2)
– 2! = 2.1! → fat(2) = 2.fat(1)
– 1! = 1.0! → fat(1) = 1 → Caso base/Ponto de parada
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4)
– 4! = 4.3! → fat(4) = 4.fat(3)
– 3! = 3.2! → fat(3) = 3.fat(2)
– 2! = 2.1! → fat(2) = 2.fat(1) = 2
– 1! = 1.0! → fat(1) = 1 → Caso base/Ponto de parada
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4)
– 4! = 4.3! → fat(4) = 4.fat(3)
– 3! = 3.2! → fat(3) = 3.fat(2) = 6
– 2! = 2.1! → fat(2) = 2.fat(1) = 2
– 1! = 1.0! → fat(1) = 1 → Caso base/Ponto de parada
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4)
– 4! = 4.3! → fat(4) = 4.fat(3) = 24
– 3! = 3.2! → fat(3) = 3.fat(2) = 6
– 2! = 2.1! → fat(2) = 2.fat(1) = 2
– 1! = 1.0! → fat(1) = 1 → Caso base/Ponto de parada
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4) = 120
– 4! = 4.3! → fat(4) = 4.fat(3) = 24
– 3! = 3.2! → fat(3) = 3.fat(2) = 6
– 2! = 2.1! → fat(2) = 2.fat(1) = 2
– 1! = 1.0! → fat(1) = 1 → Caso base/Ponto de parada
Exemplo: O Fatorial

Fatorial de 5 → fat(5)

Pela matemática:
– 5! = 5.(4.3.2.1) = 5.4! → fat(5) = 5.fat(4) = 120
– 4! = 4.3! → fat(4) = 4.fat(3) = 24
– 3! = 3.2! → fat(3) = 3.fat(2) = 6
– 2! = 2.1! → fat(2) = 2.fat(1) = 2
– 1! = 1.0! → fat(1) = 1 → Caso base/Ponto de parada
– Por definição, 0! = 1

Caso geral → fat(n) = n.fat(n-1)
Exemplo: O Fatorial

Caso base : n=0 ou n=1 → fat(n) = 1

Caso geral: fat(n) = n.fat(n-1)

Matematicamente:

fat (n)=
{ 1, se n=0 ou n=1
caso contrário , n∗fat (n−1) }
Exemplo: O Fatorial

Em Python

def fatorial(n) :
if n==0 or n==1:
return 1
else:
return n*fatorial(n-1)

Você também pode gostar