14 lines
338 B
Scheme
14 lines
338 B
Scheme
; Recursive function to return the Nth Stern-Brocot sequence number.
|
|
|
|
(define stern-brocot
|
|
(lambda (n)
|
|
(cond
|
|
((<= n 0)
|
|
0)
|
|
((<= n 2)
|
|
1)
|
|
((even? n)
|
|
(stern-brocot (/ n 2)))
|
|
(else
|
|
(let ((earlier (/ (1+ n) 2)))
|
|
(+ (stern-brocot earlier) (stern-brocot (1- earlier))))))))
|