郵便番号簿探索プログラムの作成(2)
前回の課題E では,郵便番号を線形探索するプログラムを自分で作った. 今度は,一部他人の作ったプログラムを利用して,郵便番号を二分探索するプログラムを作ろう.
$ cp /roes/sample/takataka/aprog20XY/zipsearch* . ← 最後の「空白+ピリオド」を忘れずに上記のようにファイル名の一部に * を含めると,これは「0文字以上の長さの任意の文字」にマッチする.上記の場合,該当ディレクトリ内にある3つのファイル zipsearch, zipsearch.h, zipsearch.o がマッチするので,これらがカレントディレクトリ(現在自分がいる場所.「ピリオド」がそれを表している) にコピーされる.zipsearch は以前の課題で一度コピーしているので,上書きするか尋ねられるかもしれない.上書きしよう.ちなみに,次のように rm コマンドを実行すると大変なことになる.
$ rm *実際にやっちゃだめですよ.絶対やっちゃだめですよ.
7桁の郵便番号を入力して下さい(負の数だと終了) 5202123 探索回数は17回でした [51078] 5202123 滋賀県大津市瀬田大江町のような出力が得られる.[51078] は,ソート後の配列中の何番目にこのデータが入っていたかを表している.この値や探索回数は,自分のプログラムでは表示しなくて構わない(余裕があったら実現してみてください).
右のリンク先を参照 AProg/2017/ex07B
三目ならべ(oxゲーム)をつくろう
ディレクトリ /roes/sample/takataka/aprog20XY/ に,sammoku.h, sammoku.c, sammokumain.c というファイルがおいてある. これらを自分のこの科目のディレクトリにコピーしなさい.
これらは,三目ならべ(oxゲーム)のプログラムである. コンパイルして動かしてみると…. これをちゃんと遊べるように直そう(どこをどう修正したのか忘れないようにソース中にコメントを書いておくこと). ただし,三目ならべを五目ならべや百目ならべに変更するのが簡単に済むように考えること.
ヒント:
郵便番号の二分探索を自力で
次のことをやりなさい.
うずまきぐ〜るぐる
課題Bの hogeUzumaki 関数と AProg/2017/ex04#kadaiS の技を組み合わせて,うずまきぐ〜るぐるなアニメーションを作ろう.