Fibonacci Sequence
// Function to calculate the nth Fibonacci numberint fibonacci(int n) { // Base case: If n is 0 or 1, return n // This is because the Fibonacci series starts with 0 and 1 if(n <= 1) return n;
// Recursive case: Fibonacci of n is sum of Fibonacci of (n-1) and (n-2) // The function calls itself to calculate the previous two Fibonacci numbers return fibonacci(n - 1) + fibonacci(n - 2);}
Example Walkthrough:
fibonacci(5)
callsfibonacci(4)
andfibonacci(3)
:fibonacci(5)
=fibonacci(4)
+fibonacci(3)
fibonacci(4)
callsfibonacci(3)
andfibonacci(2)
:fibonacci(4)
=fibonacci(3)
+fibonacci(2)
fibonacci(3)
callsfibonacci(2)
andfibonacci(1)
:fibonacci(3)
=fibonacci(2)
+fibonacci(1)
fibonacci(2)
callsfibonacci(1)
andfibonacci(0)
:fibonacci(2)
=fibonacci(1)
+fibonacci(0)
- Since
fibonacci(1)
is1
andfibonacci(0)
is0
, return1 + 0 = 1
.
- Now, substitute the results step by step:
fibonacci(3) = 1 + 1 = 2
fibonacci(4) = 2 + 1 = 3
fibonacci(5) = 3 + 2 = 5
Final Result:
For n = 5
, the Fibonacci number is 5
.