問題2.17、問題2.18 – SICP(計算機プログラムの構造と解釈)その35

問題2.17

(define (last-pair items)
  (if (null? (cdr items))
      (car items)
      (last-pair (cdr items))))

(last-pair (list 5 2 6 10 4 8))
gosh> 8

問題2.18

(define (reverse items)
  (define (reverse-iter i r)
    (if (null? i)
        r
        (reverse-iter (cdr i) (cons (car i) r))))
  (reverse-iter items ()))

(reverse (list 1 2 3 4 5))
gosh> (5 4 3 2 1)
計算機プログラムの構造と解釈
ジェラルド・ジェイ サスマン ジュリー サスマン ハロルド エイブルソン
ピアソンエデュケーション
売り上げランキング: 6542
«
»