29 lines
444 B
Scheme
29 lines
444 B
Scheme
(define (square x) (* x x))
|
|
|
|
;; Newton's method
|
|
|
|
(define (deriv g)
|
|
(lambda (x)
|
|
(/ (- (g (+ x dx)) (g x))
|
|
dx)))
|
|
(define dx 0.00001)
|
|
|
|
(define (cube x) (* x x x))
|
|
|
|
(define (newton-transform g)
|
|
(lambda (x)
|
|
(- x (/ (g x) ((deriv g) x)))))
|
|
|
|
(define (newtons-method g guess)
|
|
(fixed-point (newton-transform g) guess))
|
|
|
|
;;
|
|
|
|
|
|
(define (cubic a b c)
|
|
(lambda (x)
|
|
(+ (cubed x)
|
|
(* a (squared x))
|
|
(* b x)
|
|
c)))
|