(defun sqrt3 (x)
(labels ((good-enough-p (guess)
(<= (abs (- (square guess) x)) 0.001))
(improve (guess)
(average guess (/ x guess)))
(sqrt-iter (guess)
(if (good-enough-p guess)
guess
(sqrt-iter (improve guess)))))
(sqrt-iter 1.0)))