問題2.36 – SICP(計算機プログラムの構造と解釈)その50

問題2.36

(define (accumulate-n op init seqs)
  (if (null? (car seqs))
      ()
      (cons (accumulate op init (map car seqs))
            (accumulate-n op init (map cdr seqs)))))

(define items (list (list 1 2 3) (list 4 5 6) (list 7 8 9) (list 10 11 12)))
; ((1 2 3) (4 5 6) (7 8 9) (10 11 12))
(map car items)
gosh> (1 4 7 10)
(map cdr items)
gosh> ((2 3) (5 6) (8 9) (11 12))
(accumulate-n + 0 items)
gosh> (22 26 30)

accumulate 手続き

(define (accumulate op initial sequence)
  (if (null? sequence)
      initial
      (op (car sequence)
          (accumulate op initial (cdr sequence)))))
計算機プログラムの構造と解釈
ジェラルド・ジェイ サスマン ジュリー サスマン ハロルド エイブルソン
ピアソンエデュケーション
売り上げランキング: 6542
«
»