読者です 読者をやめる 読者になる 読者になる

yy_taroのとりとめのない落書き

メインフレームの導入・設計・構築ができるぐらいの知識があったりする。

SICP始めました 4

SICP四日目

 

1.2.5 最大公約数(P27)まで到達

 

問題1.16

(define (fast-expt b n)
    (define (fast-expt-iter b n a)
         (cond ( (= n 0) a)
                   ( (even? n) (fast-expt-iter (* b b) (/ n 2) a) )
                   (else (fast-expt-iter b (- n 1) (* a b) ) ) ) )
  (fast-expt-iter b n 1) )

 

問題1.17

(define (mul1 a b)
 (cond ( (= b 0) 0)
      ( (even? b) (mul1 (double a) (halve b) ) )
      (else (+ a (mul1 a (- b 1) ) ) ) ) )

 

問題1.18

(define (mul2 a b)
   (define (mul2-iter a b c)
         (cond ( (= b 0) c)
                   ( (even? b) (mul2-iter (double a) (halve b) c) )
                   (else (mul2-iter a (- b 1) (+ a c) ) ) ) )
    (mul2-iter a b 0) )

 

問題1.19

 思案中

 

問題1.20

 正規順序 :18

 作用的順序:4

 

 

計算機プログラムの構造と解釈[第2版]

計算機プログラムの構造と解釈[第2版]