(問 4.1.10) プリント p.26の deleteの定義では、 (delete 4 '(1 4 4 7))は (1 4 7)になってしまう。 (delete 4 '(1 4 4 7))が (1 7)になるように、 deleteを定義しなおせ。 4がいくつあろうが、対応できるようにすること。
(問 4.1.12)2つのリスト xsと ysを受取り、 xsの順番を逆にしたリストを ysの先頭に付け加える関数 rev-appendを定義せよ。例えば、(rev-append '(1 2 3 4) '(5 6 7 8))は (4 3 2 1 5 6 7 8)となる。
(問 5.1.2) 任意の述語とリストを受取り、リストの中で述語を満たす最初の要素を返す関数 findを定義せよ。例えば、 (find odd? '(2 4 5 3 0))は 5、 (find even? '(2 4 5 3 0))は 2となる。
初項 a と正の数 n を受取り、次の漸化式、
各問の答は必ず実行して、各問あたり 2つ以上の実行例もレポートに含めること (問5を除く)。
問は数人で相談して解いても良いが、実行例は必ず各自で作成すること。 問の答と実行例がまったく同一のレポートは不正レポートと見なす。
作成したプログラムは、 \\stfile\Report\kagawa\2001\ProgLang\Report2\ の下の「s学籍番号」というフォルダにオンライン提出する。 (どの問に対するプログラムか、すぐわかるようなファイル名にしておくこと。 ファイル名に使う文字は半角・英数字のみとする。) また、提出したファイルの Index(目録)を HTMLファイルとして作成し、 index.htmlという名前で同じフォルダに作成すること。 (Indexの例)
オンライン提出できているかどうか、必ず セルフチェックのページ で確認すること。