![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/249367/image.png)
Helped needed in Fibonacci Sequence code
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Cici
el 21 de Nov. de 2019
Comentada: Cici
el 21 de Nov. de 2019
I already made a code that finds the nth term of a Fibonacci sequence (Fn) using a recursive function but I need help updating this code to also output how many times the recursive sequence ran.
As of right now, the code I have to find the nth term is: (where n=2 and n=1 are the base conditions that tells the recursive function to stop)
function[F_n] = Fibonacci(n)
if n == 2
F_n = 1;
elseif n == 1
F_n = 0;
else
F_n = Fibonacci(n-1) + Fibonacci(n-2);
end
end
0 comentarios
Respuesta aceptada
Darshan Sen
el 21 de Nov. de 2019
Hello Cici. We can solve this by introducing another variable count into the function as shown below.
function[F_n, count] = Fibonacci(n, count)
count = 1;
if n == 2
F_n = 1;
elseif n == 1
F_n = 0;
else
[F_n_1, count_1] = Fibonacci(n-1);
[F_n_2, count_2] = Fibonacci(n-2);
F_n = F_n_1 + F_n_2;
count = count + count_1 + count_2;
end
end
Now your function returns both the
Fibonacci number as well as the number of times the function was called.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/249367/image.png)
You may capture only the count in variable ans using this code snippet for the desired value of n.
[~, ans] = Fibonacci(n);
Hope this helps. :)
Más respuestas (0)
Ver también
Categorías
Más información sobre Financial Toolbox en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!