Scheme 斐波那契数列列表打印

Scheme Fibonacci series list print

我正在尝试编写一个递归函数,在屏幕上打印给定参数 n 的斐波那契数列元素列表(每个数字在新行中)。我需要使用显示功能来打印这些数字并使用辅助方法。

示例:

(fibo 5) 1 1 2 3 5

有人可以帮帮我吗?谢谢!!

只需在循环函数中调用您的过程,注意按正确顺序打印元素并换行。请注意,我们调用递归的点对于获得所需的行为非常重要! (要看到这一点,请将递归调用 移到换行符 之后 - 打印顺序将更改)。

(define print-fibo
  (lambda (n)
    (cond ((> n 0)              ; keep iterating if we haven't reached zero
           (print-fibo (- n 1)) ; advance the recursion
           (display (fibo n))   ; display current value of fibo
           (newline)))))        ; print a new line

例如:

(print-fibo 5)
1
1
2
3
5