プリント第4章 p.4 問4.5.1
または
プリント第4章 p.5 問4.6.1
どちらか1問を選択して下さい。
参考にするプログラム: TypeClassExample.hs ()
プリント第5章 p.4 問5.4.1(の 2つの小問のうちどちらか 1つ)
ただし、文章に曖昧なところがあったり、難易度が高過ぎたりするので、
問題文を以下のように修正する。
参考にするプログラム: Head.hs
次の C言語で記述された関数と(Cのint型と Haskellの Int型に共通する範囲において) 同等の関数を Haskellで定義せよ。
int baz(int n) { int p = 1; while (n > 0) { if (n==3) { n--; continue; } p*=n; if (n%3==0) { n -= 4; } else { n -= 2; } } return p; }
なお、Cの %に対応する Haskellの演算子は`mod`である。
作成した Haskellの関数と元の Cの関数の定義の対応が 明らかでない場合、簡単に説明すること。
参考にするプログラム: FactST.hs(プリント 第6章 p.8 のプログラム) ()
プリント第8章 p.5 問8.3.1
このHTMLファイルを元にして下さい。
参考にするプログラム: Hanoi0.html, Hanoi0.js (), Hanoi.html, Hanoi.js (), Fib.html, Fib.js ()
以下の問題は、非必須のチャレンジ問題です。
Prolog言語をプリントで自習し、 プリント中のサンプルプログラムを元にして、 日本史や世界史、あるいは物語の中の有名な家系を Prologプログラムにし、 実行例を作成せよ。
Scheme言語をプリントで自習し、 サンプルプログラム以外の call/ccの使用例を WWW などで探して、 できれば自分なりのアレンジを加えよ。
Haskellによる画像作成ライブラリを用いて、 2, 3のオリジナル作品を作成せよ。
できるだけ短く簡潔におさめて下さい。
提出〆切は、2月23日(水)の試験時間です。 (オンラインの提出はありません。)