Chat (Lingr.com)
Informaiton
Daily
Column
- MySQL日本語の旅(5/1)
- アクセス向上秘伝(5/9)
- 一風変ったHaskellλ門(6/13)
- SICP Answer Book (5/31) 問題3.26追加
Zope Solution
Extra
アーカイブ
OSS案内所
Site Info
関連リンク
##(link2sicp "book-Z-H-11.html#%_thm_1.9" "Exercise 1.9")
解答例
(define (+ a b)
(if (= a 0)
b
(inc (+ (dec a) b))))
の場合
(+ 4 5) ==> (inc (+ (dec 4) 5)) ==> (inc (inc (+ (dec 3) 5))) ==> (inc (inc (inc (+ (dec 2) 5)))) ==> (inc (inc (inc (inc (+ (dec 1) 5))))) ==> (inc (inc (inc (inc 5)))) ==> (inc (inc (inc 6))) ==> (inc (inc 7)) ==> (inc 8) ==> 9
このプロセスは再帰的である。
(define (+ a b)
(if (= a 0)
b
(+ (dec a) (inc b))))
の場合
(+ 4 5) ==> (+ 3 6) ==> (+ 2 7) ==> (+ 1 8) ==> (+ 0 9) ==> 9
このプロセスは反復的である。
コード
##(sicp-answer-code "ex-1.9.scm")