2013年5月20日月曜日

開発環境

計算機プログラムの構造と解釈(Gerald Jay Sussman(原著)、Julie Sussman(原著)、Harold Abelson(原著)、和田 英一(翻訳)、ピアソンエデュケーション)の2(データによる抽象の構築)、2.2(階層データ構造と閉包)、2.2.1(並びの表現)の問題 2.17、問題 2.18を解いてみる。

その他参考書籍

問題 2.17

コード

sample.scm

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

入出力結果(Terminal, REPL(Read, Eval, Print, Loop))

1 ]=> (last-pair (list 23 72 149 34))

;Value 2: (34)

問題 2.18

コード

sample.scm

(define (append list1 list2)
  (if (null? list1)
      list2
      (cons (car list1) (append (cdr list1) list2))))

(define (reverse items)
  (if (null? (cdr items))
      items
      (append (reverse (cdr items))
              (list (car items)))))

入出力結果(Terminal, REPL(Read, Eval, Print, Loop))

1 ]=> (reverse (list 1 4 9 16 25))

;Value 2: (25 16 9 4 1)

0 コメント:

コメントを投稿