연습 1.41 , 1.42 2.1 이요

2 views
Skip to first unread message

익준

unread,
Dec 24, 2007, 2:54:52 AM12/24/07
to sicp-sig
1. 41

(define (double f)
(lambda (x)
(f (f x))))

(define (inc a) (+ a 1))

> (((double (double double)) inc) 5)
21


1.42
(define (compose f g)
(lambda (x)
( f ( g x))))
(define (square x) (* x x))
(define (inc a) (+ a 1))

> ((compose square inc)6)
49




2.1


(define (make-rat n d)
(cons
(if (< (/ n d) 0)
(if (> n 0)
(- 0 n)
(n))
(n))))

2.1 이렇게정의 되면 맞을꺼 같은데 음수이면 분자를 0으로 바꿔 줬으니..
Reply all
Reply to author
Forward
0 new messages