2008-04-07から1日間の記事一覧

SICP ex 1.16 再び

再び書いてみたら、以前書いたものと違っていた。 (define (fast-expt b n) (define (fast-expt-iter a b n) (cond ((= n 0) a) ((even? n) (fast-expt-iter a (square b) (/ n 2))) (else (fast-expt-iter (* a b) b (- n 1))))) (fast-expt-iter 1 b n)) (…

SICP ex 1.19

の変換なので、ベクトルで表すと、 から は,からベクトルで表すと、 から、対数的ステップ数の手続きは、 (define (fib n) (fib-iter 1 0 0 1 n)) (define (fib-iter a b p q count) (cond ((= count 0) b) ((even? count) (fib-iter a b (+ (* p p) (* q q)…