![Page 2: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/2.jpg)
Recursão
Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma
ExemploCálculo do fatorial de um número:
𝑓 𝑎𝑡𝑜𝑟𝑖𝑎𝑙 (𝑛)={ 1𝑠𝑒𝑛=0𝑛∗ 𝑓𝑎𝑡𝑜𝑟𝑖𝑎𝑙 (𝑛−1 )𝑠𝑒𝑛>1
![Page 3: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/3.jpg)
Fatorial
𝑓 𝑎𝑡𝑜𝑟𝑖𝑎𝑙 (𝑛)={ 1𝑠𝑒𝑛=0𝑛∗ 𝑓𝑎𝑡𝑜𝑟𝑖𝑎𝑙 (𝑛−1 )𝑠𝑒𝑛>0
0! = 11! = 1 * 12! = 2 * 13! = 3 * 2 * 14! = 4 * 3 * 2 * 15! = 5 * 4 * 3 * 2 * 1 Função Iterativa
Função Iterativa
![Page 4: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/4.jpg)
Fatorial
𝑓 𝑎𝑡𝑜𝑟𝑖𝑎𝑙 (𝑛)={ 1𝑠𝑒𝑛=0𝑛∗ 𝑓𝑎𝑡𝑜𝑟𝑖𝑎𝑙 (𝑛−1 )𝑠𝑒𝑛>0
0! = 11! = 1 * 12! = 2 * 13! = 3 * 2 * 14! = 4 * 3 * 2 * 15! = 5 * 4 * 3 * 2 * 1
0! = 11! = 1 * 0!2! = 2 * 1!3! = 3 * 2!4! = 4 * 3!5! = 5 * 4!
![Page 5: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/5.jpg)
Fatorial1 5! = 5 * 4!2 4! = 4 * 3!3 3! = 3 * 2!4 2! = 2 * 1!5 1! = 1 * 0!6 0! = 1
6’ 0! = 15’ 1! = 1 * 0! = 1 * 1 = 1 4’ 2! = 2 * 1! = 2 * 1 = 23’ 3! = 3 * 2! = 3 * 2 = 62’ 4! = 4 * 3! = 4 * 6 = 241’ 5! = 5 * 4! = 5 * 24 = 120
![Page 6: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/6.jpg)
Fatorial1 5! = 5 * 4!2 4! = 4 * 3!3 3! = 3 * 2!4 2! = 2 * 1!5 1! = 1 * 0!6 0! = 1
120
![Page 7: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/7.jpg)
Fatorial
𝑓 𝑎𝑡𝑜𝑟𝑖𝑎𝑙 (𝑛)={ 1𝑠𝑒𝑛=0𝑛∗ 𝑓𝑎𝑡𝑜𝑟𝑖𝑎𝑙 (𝑛−1 )𝑠𝑒𝑛>0
0! = 11! = 1 * 0!2! = 2 * 1!3! = 3 * 2!4! = 4 * 3!5! = 5 * 4!
Função RecursivaFunção Recursiva
![Page 8: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/8.jpg)
Recursão e a Pilha de Execução (stack)
Supõe que façamos• int x = fatorial(4);
X
Função Recursiva
![Page 9: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/9.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
![Page 10: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/10.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
fatorial(3)
3
Retorno
n
![Page 11: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/11.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
fatorial(3)
3
Retorno
n
fatorial(2)2
Retorno
n
![Page 12: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/12.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
fatorial(3)
3
Retorno
n
fatorial(2)2
Retorno
nfatorial(1)
1
Retorno
n
![Page 13: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/13.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
fatorial(3)
3
Retorno
n
fatorial(2)2
Retorno
nfatorial(1)
1
Retorno
n
fatorial(0)
0
Retorno
n
![Page 14: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/14.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
fatorial(3)
3
Retorno
n
fatorial(2)2
Retorno
nfatorial(1)
1
Retorno
n1Retorno
![Page 15: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/15.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
fatorial(3)
3
Retorno
n
fatorial(2)2
Retorno
n1Retorno
![Page 16: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/16.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
fatorial(3)
3
Retorno
n
2Retorno
![Page 17: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/17.jpg)
4
Recursão e a Pilha de Execução (stack)
fatorial(4)
XRetorno
n
6Retorno
![Page 18: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/18.jpg)
24
Recursão e a Pilha de Execução (stack)
XRetorno
int x = fatorial(4);
![Page 19: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/19.jpg)
Recursão e a Pilha de Execução (stack)
X
int x = fatorial(4);
24
![Page 20: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/20.jpg)
Elementos de uma função recursiva
• Condição de parada ou caso base ou caso trivial:• É a parte da definição da função que não faz chamada recursiva
• Chamada recursiva propriamente dita ou passo de recursão: • Deve resolver uma instância menor do mesmo problema
• Processamento de apoio ou processamento complementar: • Demais processamentos que acompanham e/ou utilizam o que resulta
da chamada recursiva
![Page 21: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/21.jpg)
Elementos de uma função recursiva
Exemplo:
Função Recursiva
![Page 22: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/22.jpg)
Função Recursiva
Elementos de uma função recursiva
Exemplo: Condição de Parada
![Page 23: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/23.jpg)
Função Recursiva
Elementos de uma função recursiva
Exemplo: Chamada recursiva a uma instância menor
![Page 24: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/24.jpg)
Função Recursiva
Elementos de uma função recursiva
Exemplo: Processamento de apoio
![Page 25: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/25.jpg)
Importante
• Se não existir o caso base (condição de parada), o programa entra em loop infinito
• Se a chamada recursiva não for aplicada a uma instância menor do problema, o programa entra em um loop infinito
• Se um função recursiva ficar chamando a si mesma indefinidamente (num loop infinito) o programa rapidamente para por “estouro da pilha” (stack overflow)
![Page 26: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/26.jpg)
Importante
• Se não existir o caso base (condição de parada), o programa entra em loop infinito
• Se a chamada recursiva não for aplicada a uma instância menor do problema, o programa entra em um loop infinito
• Se um função recursiva ficar chamando a si mesma indefinidamente (num loop infinito) o programa rapidamente para por “estouro da pilha” (stack overflow)
![Page 27: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/27.jpg)
Fibonacci• O número de Fibonacci Fn para n>=0 é definido da seguinte maneira:
Função Recursiva
Exercício 01
![Page 28: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/28.jpg)
Exercício 2
O que faz o programa abaixo? Justifique!
![Page 29: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/29.jpg)
Torre de Hanói• A lenda diz que num templo perdido na Ásia uns monges estão
tentando mover 64 discos de tamanhos diferentes de um pino para outro, usando um terceiro como auxiliar, de tal forma que:• Nunca um disco maior é colocado sobre um menor
• De acordo com a lenda o mundo se acaba no momento que esta tarefa é completada.
![Page 30: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/30.jpg)
Torre de Hanói• Estado inicial: • pilha de discos ordenados pelo raio
• Objetivo: • transferir a pilha de discos para uma das outras pilhas vazias
• Restrição:• Mover um disco por vez• Um disco de raio maior não pode estar sobre um disco de raio menor
![Page 31: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/31.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
321
![Page 32: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/32.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
3 21
![Page 33: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/33.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
321
![Page 34: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/34.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
321
• Ok, mas só podemos mover um disco por vez
• Como a pilha com os 2 discos menores foi parar no pino C, e depois no pino B?
![Page 35: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/35.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
321
![Page 36: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/36.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
32
1
Movimento = 1
Mova o disco 1 do pino A para o pino B
![Page 37: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/37.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
3 2 1
Movimento = 2
Mova o disco 2 do pino A para o pino C
![Page 38: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/38.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
3 21
Movimento = 3
Mova o disco 1 do pino B para o pino C
![Page 39: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/39.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
321
Movimento = 4
Mova o disco 3 do pino A para o pino B
![Page 40: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/40.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
321
Movimento = 5
Mova o disco 1 do pino C para o pino A
![Page 41: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/41.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
32
1
Movimento = 6
Mova o disco 2 do pino C para o pino B
![Page 42: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/42.jpg)
A C B
Torre de Hanói• Se o valor fornecido para o programa for 3, então a sequência de chamadas
e as saídas geradas são:
321
PARABÉNS!Conseguiu mover os 3 discos com o mínimo de movimentos
Movimento = 7
M
Quantidade mínima de movimentos
Número dediscos
Mova o disco 1 do pino A para o pino B
![Page 46: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/46.jpg)
![Page 47: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/47.jpg)
![Page 48: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/48.jpg)
![Page 49: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/49.jpg)
![Page 50: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/50.jpg)
![Page 51: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/51.jpg)
![Page 52: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/52.jpg)
![Page 53: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/53.jpg)
![Page 54: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/54.jpg)
![Page 55: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/55.jpg)
![Page 56: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/56.jpg)
![Page 57: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/57.jpg)
![Page 58: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/58.jpg)
![Page 59: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/59.jpg)
![Page 60: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/60.jpg)
![Page 61: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/61.jpg)
![Page 62: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/62.jpg)
![Page 63: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/63.jpg)
![Page 64: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/64.jpg)
![Page 65: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/65.jpg)
![Page 66: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/66.jpg)
Tarefa• Torre de Hanói
Escrever um programa em C que calcula o movimento de n discos de acordo com as regras estabelecidas
![Page 67: Recursão. Uma função é dita recursiva quando dentro do seu código existe uma chamada para si mesma Exemplo Cálculo do fatorial de um número:](https://reader038.vdocuments.pub/reader038/viewer/2022102805/552fc13f497959413d8de744/html5/thumbnails/67.jpg)
Material Baseado em:
• Estrutura de Dados Usando C (Livro)
• Slides do Prof. Daniel M. Martin