Exercise 1.12
Posted on Tuesday, September 11th, 2007
(define (p y x)
(cond ((= y x) 1)
((= y 1) 1)
((= x 1) 1)
(else
(+ (p (- y 1) (- x 1))
(p (- y 1) x)))))
(define (pascal y)
(pic y 1))
(define (pic y count)
(cond ((< y count) (newline))
(else (print-row count 1)
(pic y (+ 1 count)))))
(define (print-row y x)
(cond ((> x y) (newline)) ; last number in row
(else (write (p y x))
(print-row y (+ x 1)))))
Categorized as SICP Chapter 1, SICP Exercises