0
我正在閱讀SICP第3章並且想到了這一點(認爲它是創建整數流的過程整數的變體):如何創建兩個交替值的流?例如,你創建這個:SICP流練習:創建一個具有交替值的流
1 0 1 0 1 0 1 0 ...
,你可以改變的步驟2(或更多),使它看起來像
1 1 0 0 1 1 0 0 1 1 ...
1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 ...
我正在閱讀SICP第3章並且想到了這一點(認爲它是創建整數流的過程整數的變體):如何創建兩個交替值的流?例如,你創建這個:SICP流練習:創建一個具有交替值的流
1 0 1 0 1 0 1 0 ...
,你可以改變的步驟2(或更多),使它看起來像
1 1 0 0 1 1 0 0 1 1 ...
1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 ...
(define (make-alternating-values n)
(define (iter i)
(cons-stream
(if (> n 0)
1
0)
(if (= i (- 1 n))
(iter n)
(iter (- i 1)))))
(iter n))
(make-alternating-values 1)
; 1 0 1 0 1 0 1 0 ...
(make-alternating-values 2)
; 1 1 0 0 1 1 0 0 1 1 ...
(make-alternating-values 3)
; 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 ...