Skip to content

Instantly share code, notes, and snippets.

@R4wm
Created June 3, 2017 00:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save R4wm/7e7c736222d5b2cfdd3f297af590128d to your computer and use it in GitHub Desktop.
Save R4wm/7e7c736222d5b2cfdd3f297af590128d to your computer and use it in GitHub Desktop.
ex1.7 incomplete
#!/usr/bin/guile -s
!#
; define square
(define (square x) (* x x))
; define average
(define (average x y)
(/ (+ x y)2))
; improve is to average x divided by guess
; define improve
(define (improve guess x)
(average guess (/ x guess)))
; define good-enough
(define (good-enough? guess x)
(< (abs (- (square guess) x)) 0.001))
;(display (good-enough? 5 100))
;(newline)
(define (sqrt-iter guess x)
(if (good-enough? guess x)
guess
(sqrt-iter (improve guess x)
x)))
(display (sqrt-iter 5 100))
(newline)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment