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

問題1.2,問題1.3,問題1.4

SICPはじめました。問題1.1は簡単すぎるので省略。

問題1.2

(/ (+ 5 4 (- 2 (- 3 (+ 6 (/ 4 5))))) (* 3 (- 6 2) (- 2 7)))

問題1.3

(define (take3 x y z) (let ((a (* x x)) (b (* y y)) (c (* z z)))
                       (cond ((and (> a c) (> b c)) (+ a b))
                             ((and (> b a) (> c a)) (+ b c))
                             ((and (> c b) (> a b)) (+ c a)))))

問題1.4

仮パラメタとしてa,bをとり、b>0ならaとbを足し、そうでなければaからbを引く手続き。
結果としてa+|b|となる。