我无法弄清楚这个程序中的错误.这是Scheme版本.我也尝试过Common Lisp版本.在这两种情况下,程序都会继续运行而没有任何结果.请帮忙.
(define (sqrt1 x)
(define (square x)
(* x x))
(define (isGoodEnough g x)
(< (abs (- (square g) (square x))) 0.01))
(define (average x y)
(/ (+ x y) 2))
(define (improvedGuess g x)
(average g (/ x g)))
(define (sqrt-iter g x)
(if (isGoodEnough g x)
g
(sqrt-iter (improvedGuess g x) x)))
(sqrt-iter 1.0 x))
Run Code Online (Sandbox Code Playgroud)