Add 1.2, 1.3 and 1.7 exs
This commit is contained in:
commit
d90eecd9bb
|
@ -0,0 +1,7 @@
|
|||
(define the-numerator
|
||||
(+ 5 4 (- 2 (- 3 (+ 6 (/ 4 5))))))
|
||||
|
||||
(define the-denominator
|
||||
(* 3 (- 6 2)(- 2 7)))
|
||||
|
||||
(/ the-numerator the-denominator)
|
|
@ -0,0 +1,11 @@
|
|||
(define (square x) (* x x))
|
||||
(define (sum-of-squares x y) (+ (square x) (square y)))
|
||||
(define (is-first-least? a b c) (and (< a b) (< a c)))
|
||||
|
||||
(define a 9)
|
||||
(define b 1)
|
||||
(define c 10)
|
||||
|
||||
(cond ((is-first-least? c a b)(sum-of-squares a b))
|
||||
((is-first-least? a c b)(sum-of-squares c b))
|
||||
((is-first-least? b a c)(sum-of-squares a c)))
|
|
@ -0,0 +1,23 @@
|
|||
(define (sqrt-iter guess guess-prev x)
|
||||
(if (good-enough? guess guess-prev)
|
||||
guess
|
||||
(sqrt-iter (improve guess x) guess
|
||||
x)))
|
||||
|
||||
(define (improve guess x)
|
||||
(average guess (/ x guess)))
|
||||
|
||||
(define (average x y)
|
||||
(/ (+ x y) 2))
|
||||
|
||||
(define (good-enough? guess guess-prev)
|
||||
(< (abs (- guess guess-prev)) 0.001))
|
||||
|
||||
(define (sqrt-new x)
|
||||
(if (= x 0) x (sqrt-iter 1.0 999 x)))
|
||||
|
||||
(sqrt-new 16)
|
||||
(sqrt-new 1.0004)
|
||||
(sqrt-new 1)
|
||||
(sqrt-new 134895724398)
|
||||
(sqrt-new 0)
|
Loading…
Reference in New Issue