一人読書会 「計算機プログラムの構造と解釈」 (9)
1.1.7 Newton 法による平方根
問題 1.8
立方根をとるNewton法は y が x の立方根の近似値なら、よりよい近似は以下の値で与えられるという事実によっている。この手続きを実装せよ。
(define (good-enough? guess pre-guess) (< (abs (- guess pre-guess)) 0.001)) (define (improve guess x) (/ (+ (/ x (* guess guess)) (* 2 guess)) 3)) (define (cuberoot-itr guess x) (if (good-enough? (improve guess x) guess) (improve guess x) (cuberoot-itr (improve guess x) x))) (define (cuberoot x) (cuberoot-itr 1.0 x))
こんな感じかな。