読者です 読者をやめる 読者になる 読者になる

yy_taroのとりとめのない落書き

メインフレームの導入・設計・構築ができるぐらいの知識があったりする。

SICP始めました 40

SICP四十日目

 

問題2.61

( define ( adjoin-set x set )
 ( if ( element-of-set? x set )
  set
  ( cons x set ) ) )

これでいけるかと思ったものの、( adjoin-set ‘5 ‘( 2 3 4 ) )このケースだと’( 5 2 3 4 )と

なってしまい順序づけられた表現ではなくなってしまう。

残念いけると思ったのに今一歩足らず

 

正解はこれ

( define ( adjoin-set x set )
 ( cond ( ( null? set ) x )
    ( ( = x ( car set ) ) set )
    ( ( < x ( car set ) ) ( cons x set )
    ( else ( cons ( car set ) ( adjoin-set x ( cdr set ) )  ) ) ) ) )

  

計算機プログラムの構造と解釈[第2版]

計算機プログラムの構造と解釈[第2版]