最終更新日 2009年12月3日

糸切りゲーム

Kayles Ver.1.0


このソフトは、高知大学の共通教育の「ゲームの世界」の授業のために作った、 一松 信著「石とりゲームの数理」に載っている「糸切りゲーム」のプログラムです。 このゲームは、上記の本に書いてあるように ELWYN R.BERLEKAMP, JOHN H. CONWAY, RICHARD K. GUY 著「WINNING WAYS FOR YOUR MATHEMATICAL PLAYS」 に載っているゲーム「Kayles Game」と同値なゲームです。
「糸切りゲーム」のルールは次のようなものです。
1. 二人で交互に着手。
2. 手はどれか一本の糸をどこかで切る。ただし、このとき、切られたどちらの切れ端も、 前もって定められた単位長より短くてはいけない。したがって、単位長の2倍より短い糸は もはや切れない。
3. どうしても切れなくなったほうが負けです。

Kayles Game は次のような石とりゲームです。
石をいくつかずつの列に並べる。二人で交互に着手し、最終着手者を勝ちとする。 手は、どれか一つの列に対して、1個または連続する2個の石を取る。 もし中間から石を取ったときは、残りの列は二つの列に分解する。

「糸切りゲーム」は、各糸の長さは単位長の何倍かの数の小数点以下切り捨てた数引く1の個数の石を それぞれ並べた「Kayles Game」と同値になります。

このプログラム 「糸切りゲーム」 使い方は簡単で、実行すると

となります。
糸の本数(7本以下)とそれぞれの糸の長さ(単位長は1です)を Edit にセットし、 「SET」のボタンをクリックします。

となります。

ラジオボタンの「先手」、 ラジオボタンの「後手」または ラジオボタンの「両方」をクリックして、「先手」か「後手」か「先手も後手も人間が行うか」を決め、 「PLAY」ボタンをクリックして、ゲーム開始です。


カットしたい糸の線上をマウスでクリックします。


目盛りが表示されていますが、糸が切られる点は正確にマウスで指示した点ではなく、 目盛りの点か目盛りの中間点を切るようにコンピュータ側で修正しています。


組合せゲーム理論の授業の教材用にと一日間で作ったプログラムで、「ゲームの値」を理解するために 作った物で、ゲームとして遊んでも、人間同士の対戦ならともかく、 面白くともなんともありません。正確な理論を知らなければ、コンピュータに必ず負けます。

Kayles.EXE のダウンロ ード

ホームページに戻る

数学教育を改善するためのソフト開発Uに戻る