recursive fibonacci scheme
Recursive Fibonacci in Scheme
To implement the recursive Fibonacci sequence in Scheme, you can define a function that calls itself recursively. Here's an example:
(define (fibonacci n)
(cond
((= n 0) 0)
((= n 1) 1)
(else (+ (fibonacci (- n 1)) (fibonacci (- n 2))))))
(display (fibonacci 10)) ; Example usage: prints the 10th Fibonacci number
In this code, the fibonacci
function takes an argument n
and uses a cond
statement to handle the base cases (when n
is 0 or 1) and the recursive case. The function recursively calls itself with n-1
and n-2
to calculate the Fibonacci number for n
. The base cases return the values 0 and 1, while the recursive case adds the results of the two previous Fibonacci numbers.
You can replace 10
in (display (fibonacci 10))
with any other number to calculate the Fibonacci number at that position.
Please note that the Fibonacci sequence grows exponentially, so calculating large Fibonacci numbers using this recursive approach may be slow. There are more efficient algorithms available for calculating Fibonacci numbers.