うんこゲーム

うんこゲーム
リーダー 亀山奈央
プレゼンター 橘貴志
アルゴリズム 古森愛美
プログラマー 中島宏基
パワーポイント 公文ゆい
ルール
人とCPUが交互に「う」「ん」「こ」の文字を5×5の
盤上に置いていきます。
先に「うんこ」と一列に並べたほうが勝ちになりま
す。
どちらも勝てないまま置く場所が無くなったら引き
分けです。
プログラム
C言語で作成
 元となるデータファイルがなかったので、盤面
から作成した。
 人とcpuが交互に「う」「ん」「こ」の文字を
5×5の盤上に置いていくようにプログラムした。
 空きコマを探す。
アルゴリズム
一手詰みをもの
にする
例)
 CPUが「こ」の時
 「うん★」となって
いる位置を探し、★
のところに「こ」を
入れる。
う
ん
★
相手のリーチを防
ぐ
例)
CPUが「う」の時
「う○こ」になってい
る位置を探し、○の
ところに「こ」を入れ
る。
う
ん
★
こ
相手のリーチ
になる手は打
たない。
例)
 CPUが「ん」の時
 相手は次に「こ」を打つ
ので、「×」のところに
「ん」を打たない。
× × ×
× う ×
× × ×
ダブルリーチを
仕掛ける
う
★ ★
例)
CPUが「う」の時
 ただしこの形が起こる
のはまれである。
う ん ん
こ
こ
「こ・ん・ん」の形を
作る。
CPUが「ん」の時
「ん」を★の位置に入れ
る。
防ぐために、相手は空
白のどちらかに「こ」を
入れる。
もう一方の空白に、「う」
を入れる。
う
ん ★
★ こ
う
「ん」を★の位置に入れ
る。
う
ん ん
★ こ
う
防ぐために、相手は空
白のどちらかに「こ」を
入れる。
う
こ
ん ん
★ こ
う
もう一方の空白に、
「う」を入れる。
う
こ
ん ん
う ★ こ
完成!やったー(^^)
う
「こ・ん・ん」となる形は、
先ほどの図の回転・反
転でもできる。
また、右のような形もま
れに起こる。
こ
う
★
ん
う
リーチとなる手を、
打つ。
例)
CPUが「こ」の時
★のところに「こ」を打
つ。
う
★
★
ん
ランダムに打つ。
例)
CPUが「ん」の時
★の位置に打つ。
× × × ★ ★
× う × ★ ★
× × × ★ ★
★ ★ ★ ★ ★
★ ★ ★ ★ ★
優先順位
1. 一手詰みをものにする
2. 相手のリーチを防ぐ
3. 相手のリーチになる手は打たない
4. ダブルリーチを仕掛ける
5. 「こ・ん・ん」の形を作る
6. リーチとなる手を、打つ
7. ランダムに打つ
おわり