패스

2008. 8. 5.
연습문제 2.80
(define (=zero? v) (apply-generic '=zero? v))
(put '=zero? 'scheme-number
(lambda (n) (= n 0)))
(define (=zero?rat r1)
(and (= (denom r1) 0)
(= (numer r1) 0)))
(put '=zero? 'rational
(lambda (r) (=zero?rat r)))
(define (=zero?complex c1)
(and (= (real-part c1) 0)
(= (imag-part c1) 0)))
(put '=zero? 'complex
(lambda (c) (=zero?complex c)))

(put '=zero? 'scheme-number
(lambda (n) (= n 0)))
(define (=zero?rat r1)
(and (= (denom r1) 0)
(= (numer r1) 0)))
(put '=zero? 'rational
(lambda (r) (=zero?rat r)))
(define (=zero?complex c1)
(and (= (real-part c1) 0)
(= (imag-part c1) 0)))
(put '=zero? 'complex
(lambda (c) (=zero?complex c)))
연습문제 2.80
(define (=zero? v) (apply-generic '=zero? v))
(put '=zero? 'scheme-number
(lambda (n) (= n 0)))
(define (=zero?rat r1)
(and (= (denom r1) 0)
(= (numer r1) 0)))
(put '=zero? 'rational
(lambda (r) (=zero?rat r)))
(define (=zero?complex c1)
(and (= (real-part c1) 0)
(= (imag-part c1) 0)))
(put '=zero? 'complex
(lambda (c) (=zero?complex c)))

(put '=zero? 'scheme-number
(lambda (n) (= n 0)))
(define (=zero?rat r1)
(and (= (denom r1) 0)
(= (numer r1) 0)))
(put '=zero? 'rational
(lambda (r) (=zero?rat r)))
(define (=zero?complex c1)
(and (= (real-part c1) 0)
(= (imag-part c1) 0)))
(put '=zero? 'complex
(lambda (c) (=zero?complex c)))
연습문제 2.79
(define (equ-complex c1 c2)
(and (= (real-part c1) (real-part c2))
(= (imag-part c1) (imag-part c2))))
(put 'equ? '(complex complex)
(lambda (z1 z2) (equ-complex z1 z2)))
(define (equ-rat r1 r2)
(and (= (denom r1) (denom r2))
(= (number r1) (number r2))))
(put 'equ? '(rational rational)
(lambda (r1 r2) (equ-rat r1 r2)))
(put 'equ? '(scheme-number scheme-number)
(lambda (n1 n2) (= n1 n2)))
(define (equ? x y) (apply-generic 'equ? x y))

(and (= (real-part c1) (real-part c2))
(= (imag-part c1) (imag-part c2))))
(put 'equ? '(complex complex)
(lambda (z1 z2) (equ-complex z1 z2)))
(define (equ-rat r1 r2)
(and (= (denom r1) (denom r2))
(= (number r1) (number r2))))
(put 'equ? '(rational rational)
(lambda (r1 r2) (equ-rat r1 r2)))
(put 'equ? '(scheme-number scheme-number)
(lambda (n1 n2) (= n1 n2)))
(define (equ? x y) (apply-generic 'equ? x y))
연습문제 2.79
(define (equ-complex c1 c2)
(and (= (real-part c1) (real-part c2))
(= (imag-part c1) (imag-part c2))))
(put 'equ? '(complex complex)
(lambda (z1 z2) (equ-complex z1 z2)))
(define (equ-rat r1 r2)
(and (= (denom r1) (denom r2))
(= (number r1) (number r2))))
(put 'equ? '(rational rational)
(lambda (r1 r2) (equ-rat r1 r2)))
(put 'equ? '(scheme-number scheme-number)
(lambda (n1 n2) (= n1 n2)))
(define (equ? x y) (apply-generic 'equ? x y))

(and (= (real-part c1) (real-part c2))
(= (imag-part c1) (imag-part c2))))
(put 'equ? '(complex complex)
(lambda (z1 z2) (equ-complex z1 z2)))
(define (equ-rat r1 r2)
(and (= (denom r1) (denom r2))
(= (number r1) (number r2))))
(put 'equ? '(rational rational)
(lambda (r1 r2) (equ-rat r1 r2)))
(put 'equ? '(scheme-number scheme-number)
(lambda (n1 n2) (= n1 n2)))
(define (equ? x y) (apply-generic 'equ? x y))
피드 구독하기:
글 (Atom)