問題1.12, p.23

サンプルコード

;code/problem-1-12.scm

(define (pascal x y) ;x:行, y:列
    (cond ((= y 1) 1)
          ((= x y) 1)
          (else (+ (pascal (- x 1) (- y 1))
                   (pascal (- x 1) y)))))

#?=(pascal 3 2)
#?=(pascal 5 3)

実行結果

#?="./problem-1-12.scm":9:(pascal 3 2)
#?-    2
#?="./problem-1-12.scm":10:(pascal 5 3)
#?-    6