Code Review

Compare your solutions

    #| BEGIN (Введите свое решение) |#
(define (square x) (* x x))
(define (improve guess x)
  (average guess (/ x guess)))
(define (average x y)
  (/ (+ x y) 2))

(define (new-good-enough? prev-guess guess)
  (< (abs (/ (- guess prev-guess) guess)) 0.00000000001))

(define (new-sqrt-iter guess x)
  (if (new-good-enough? guess (improve guess x))
    guess
    (new-sqrt-iter (improve guess x) x)))

(define (square-root x)
  (new-sqrt-iter 1.0 x))
#| END |#