TOY VOX

管理人VOX6336が昭和レトロな遊びをするだけのブログです。スマートフォンでの閲覧推奨。

オセロ 9

2021-03-30 00:29:32 | プログラミング初心者(プチコン3号)
 もし3手目でまん中(5のマス)が空いていれば、まん中1択である。ここでフラグ1を立てる。

if ban==3 and masu[5]==0 then oku=5:flg=1

 さらに5手目で右下角(9のマス)が空いていれば、右下角1択。コンピューターの勝ちとなる。

if flg==1 and masu[9]==0 then oku=9

 もし右下角が空いていなければ、もう一つの「○」の位置によってどこに置くかがきまる。
 このうち4つが勝ちパターン。しかしこんなむずかしい確率・統計みたいなものを、さいきんの小学生はやるのかねぇ。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

オセロ 8

2021-03-29 19:28:42 | プログラミング初心者(プチコン3号)
 ○✕ゲームでコンピューターが先手のときの思考ルーチンを作っている。
 マスは9つなので、第1手は9通りある。第2手は8通り。したがって第1手〜第2手は9×8=72通りある。
 考えかたとして、マスをAまん中、B角、C辺とすれば、第1手は3通りである。いちばん合理的な第1手はAまん中だろう。

if ban==1 then oku=5

 このあとプレイヤー(人間)の第2手によって7通りの手を考えればいい。基本負けなければいいからである。
 しかし勝ちにいくならば、第1手をB角に固定し、後手による第2手をDまん中、Eそれ以外の2通りとする。

if ban==1 then oku=1

 もしもプレイヤーの第2手がEまん中以外ならば、コンピューターの第3手はFまん中。これによりコンピューターの第3手は2通りにしぼることができる。



コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

オセロ 7

2021-03-28 00:29:54 | プログラミング初心者(プチコン3号)
 1がコンピューターで2が人間の場合のコンピューターの思考ルーチンを作ってみよう。
 石を置くタイミングで、プレイヤー1がコンピューターだった場合、サブルーチンへ飛ぶ。


 とりあえず今回はランダムに石を置くようにしてみよう。


 テストプレイ。先手コンピューター。棋譜3,5,6,9,4,1の6手で人間の勝ち。


 うん。プログラムの組み立て自体はこれで問題なさそうだ。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

オセロ 6

2021-03-27 04:43:26 | プログラミング初心者(プチコン3号)
 さあ、○✕ゲームができた。これをテストプレイしてみよう。
 ....。


 引き分けになったが、さいごの一手が表示されない。これは勝利判定をするタイミングが間違っているからだろう。プログラムのこの部分を

ここへ移す。


 テストプレイ。


 どうやらうまく行ったようだ。次はコンピューターの思考ルーチンを作ってみよう。
 
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

オセロ 5

2021-03-26 03:12:28 | プログラミング初心者(プチコン3号)
 ポカよけを作っておこう。9つあるマスの外には石を置けない。すでに石がある場所には石を置けない。


 ポカよけの次に、サブルーチンへ飛んで勝利判定をする。石が3こならぶのは全部で8パターンある。


 石が3つならんだらそのときの手番のプレイヤーを勝利者とする。
 勝利者がでずにマスが9つうまったら引き分け。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする