球拍-在帕斯卡三角区产生列

时间:2019-11-16 22:36:41

标签: racket

我编写了一个函数,该函数使用自然数size并生成一个列表,该列表由size个内部列表组成,每个内部列表代表帕斯卡三角形的一行。问题是,现在我被要求不使用cond而使用range和/或build-list再次写它。谁能告诉我如何做到这一点?

(define (pascals-triangle size)
  (local 
    [(define (next-row row)
       (map + (cons 0 row) (append row (list 0))))

     (define (triangle row rows)
       (cond
         [(= row 0) empty]
         [else (cons (triangle (next-row row) (- rows 1)))]))]

    (triangle (list 1) size)))

0 个答案:

没有答案