Name: HERP 2010-07-22 20:53
(define (A x y)
(cond ((= y 0) 0)
((= x 0) (* 2 y))
((= y 1) 2)
(else (A (- x 1)
(A x (- y 1))))))I understand everything up until the else.
HALP.
(define (A x y)
(cond ((= y 0) 0)
((= x 0) (* 2 y))
((= y 1) 2)
(else (A (- x 1)
(A x (- y 1))))))
(cond ((= y 0) 0)
((= x 0) (* 2 y))
((= y 1) 2)
(t (A (- x 1)
(A x (- y 1)))))
=>
(if (= y 0)
(begin 0)
(cond ((= x 0) (* 2 y)) ((= y 1) 2) (t (a (- x 1) (a x (- y 1))))))
=>
(if (= y 0)
(begin 0)
(if (= x 0)
(begin (* 2 y))
(cond ((= y 1) 2) (t (a (- x 1) (a x (- y 1)))))))
=>
(if (= y 0)
(begin 0)
(if (= x 0)
(begin (* 2 y))
(if (= y 1)
(begin 2)
(cond (t (a (- x 1) (a x (- y 1))))))))
=>
(if (= y 0)
(begin 0)
(if (= x 0)
(begin (* 2 y))
(if (= y 1)
(begin 2)
(begin (a (- x 1) (a x (- y 1)))))))
(cond
(test1 result1)
...)
=>
(if test1
(begin result1)
(cond ...))