0

複数の If-Else ステートメントを使用せずに、X と O を下のグリッドに出力する簡単な方法を作成しようとしています。アプリケーションに 575x620 の画面サイズを使用しています。

Rectangle(hdc, 5, 570, 550, 5);

Rectangle(hdc, 50, 50, 200, 200);
Rectangle(hdc, 200, 50, 350, 200);
Rectangle(hdc, 350, 50, 500, 200);

Rectangle(hdc, 50, 200, 200, 350);
Rectangle(hdc, 200, 200, 350, 350);
Rectangle(hdc, 350, 200, 500, 350);

Rectangle(hdc, 50, 350, 200, 500);
Rectangle(hdc, 200, 350, 350, 500);
Rectangle(hdc, 350, 350, 500, 500);


if( ttt.board[ 0 ][ 0 ] == 1 )
{
    MoveToEx(hdc, 50, 50, NULL);
    LineTo(hdc, 200, 200);
    MoveToEx(hdc, 200, 50, NULL);
    LineTo(hdc, 50, 200);
}
else
{
    Ellipse(hdc, 50, 50, 200, 200);
}

上記のコードは、最初の X と O を最初のブロックに出力しています。大量の If-Else ステートメントを使用せずに、残りのブロックにも同じことを行いたいと考えています。これを実装する方法について誰かアイデアや提案がありますか? データ メンバーが枯れているかどうかをチェックしている ボックスをクリックしました。

4

1 に答える 1

0

draw_cross描画する正方形の角の 1 つ (または必要に応じて中心) を渡す関数を作成します。同様に、draw_circle. 次に、ボードをステップスルーし、それらを使用して各正方形に適切なボードを描きます。

于 2012-09-24T19:56:05.097 に答える