まずは、ゲームループを考えてみましょう。


- [ main.cpp ] -----


#include <stdio.h>


int main(){


// isEnd() はゲームが終了しているかを返してくれる関数です。

// ゲームが終了している場合は 0 が返ってきますが、

// まだ終了していない場合は 1 が返ってきます。

while( isEnd() == 1 ){


// draw() は盤面を描画する関数です。

// 戻り値はありません。

draw();


// drawTurn() は現在 黒(1P)の番か白(2P)の番かを表示します。

drawTurn();


// put() はプレイヤーに駒を配置する場所を選択させます。

// 挟んだ駒をひっくり返す処理もここで行います。

// 正常に駒をおけた場合は 0 を返しますが、

// 既に駒が置かれている場所や、挟めない場所に駒を置こうとしたときには 1 を返します。

if( put() == 0 ){

// nextTurn()は黒(1P)と白(2P)の順番を入れ替えます。

nextTurn();

}else{

printf( "そこには置けません\nもう一度選択してください。\n" );

}


}


// result() はゲームの結果を表示します。

result();


return0;

}


-----


このような感じのループ構造を持つプログラムとしてゲームを作っていきましょう。

次回からは実際にこのゲームで使用する draw() や isEnd() といった関数の中身を作っていきましょう。