Com a linguagem de programação Python, é possível realizar a...
Com a linguagem de programação Python, é possível realizar a criação de funções recursivas, que são bastante úteis para resolução de problemas computacionais. Tendo isso em mente, analise o código em Python abaixo.
Nesse caso, ao executar o programa, o valor impresso será
Comentários
Veja os comentários dos nossos alunos
def f(i):
if i == 1 or i == 2:
return 1
return f(i-1) + f(i-2)
return f(10-1) + f(10-2) = 9 + 8 = 17
return f(9-1) + f(8-2) = 8 + 6 = 14
return f(8-1) + f(6-2) = 7 + 4 = 11
return f(7-1) + f(4-2) = 6 + 2 = 8
return f(6-1) + f(2-2) = 5 + 0 = 5
Result = 55
print(f(10))
F1 =1
F2=1
F3 = 2 (F2+F1)
F4 =3 (F3+F2)
F5=5 (F4 + F3)
F6=8 (F5 + F4)
F7=13 (F6 + F5)
F8=21 (F7+F6)
F9=34 (F8+F7)
F10 = 55 (F9+F8)
Algoritmo clássico das aulas de algoritmos da faculdade...FIBONACCI...
0,1,1,2,3,5,8,13,21,34,55
def f(i):
if i == 1 or i == 2:
return 1
return f(i-1) + f(i-2)
(print (F(10))
F=10
f(10-1) + f(10-2) = 9+8 = 17 (agora eu pego esses valores e coloco no lugar do ''i)
return f(9-1) + f(8-2) = 8 + 6 = 14 (agora eu pego esses valores e coloco no lugar do ''i)
return f(8-1) + f(6-2) = 7 + 4 = 11 (agora eu pego esses valores e coloco no lugar do ''i)
return f(7-1) + f(4-2) = 6 + 2 = 8(agora eu pego esses valores e coloco no lugar do ''i)
return f(6-1) + f(2-2) = 5 + 0 = 5
return (55) = 17+14+11+8+5
A questão é entender o método de Fibonacci , atribuindo o primeiro valor dado ''10'' e na sequência ir pegando os resultando obtidos com o método e aplicando em return f(i-1) + f(i-2) .
Qual a lógica de f(9) ser 9 e f(8) valer 8? Só em programação mesmo.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo