2008-02-19から1日間の記事一覧

問題1.11

再帰関数を、再帰的プロセス、反復的プロセスで記述せよ ; 答え合わせ用にトレース ; (f 3) ; ==> (+ (f 2) (* 2 (f 1)) (* 3 (f 0))) ; ==> (+ 2 (* 2 1) (* 3 0)) ; ==> (+ 2 2 0) ; ==> 4 ; (f 4) ; ==> (+ (f 3) (* 2 (f 2)) (* 3 (f 1))) ; ==> (+ 4 4 …

問題1.10

Ackermann関数についてそもそもAckermann関数ってなんだ?って話なので、Wikipediaで調べてみる。 アッカーマン関数 - Wikipedia今ひとつ分からないので実際に書いて動かしてみる。 (define (A x y) (cond ((= y 0) 0) ((= x 0) (* 2 y)) ((= y 1) 2) (else …