理系学生日記

おまえはいつまで学生気分なのか

2008-08-23から1日間の記事一覧

問題3-56 (3.5.2 Infinite Streams)

今回は,2,3,5 のみを素因数として持つような数のみによって構成される,昇順かつ重複のない無限ストリームを構成します.ヒントとしては,以下のような無限ストリーム S を構成すれば良いとされていました. S は 1 から始まる (scale-stream S 2) は S …

問題3-55 (3.5.2 Infinite Streams)

今回は,与えられた無限ストリームの部分和を持った無限ストリームを返す関数 partial-sums を作成します.渡された無限ストリームが だったとき, 返す無限ストリーム の要素 は ということになります. (define (partial-sums S) (stream-cons (stream-car…

問題3-54 (3.5.2 Infinite Streams)

目的は n 番目の要素が になるような無限ストリーム factorials を作成すること. まずは,2 つのストリームを掛け合わせる まずは,2 つのストリームを掛け合わせて,新しい無限ストリームを作るような関数 mul-stream をこさえます. (define (mul-stream …

問題3-53 (3.5.2 Infinite Streams)

ストリーム s の要素はどうなっているでしょう,という問題. (define (add-stream s1 s2) (stream-map + s1 s2)) (define s (cons-stream 1 (add-stream s s))) 最初の要素が 1 なのは定義より明らか. 次の要素は,ストリーム s の先頭要素を 2 回足したも…

Infinite Streams が面白すぎる件

遅延評価を利用した無限ストリームの章に入りました (3.5.2). 無限ストリームを利用すると,その名の通り,無限長のものが扱えるようになる.例えば以下は無限長である自然数のリスト. ; SICP と記述を合わせるために,cons-stream を stream-cons のエイ…