個人財務 Javaプログラミングチャレンジ:Tic-Tac-ToeプログラムにGUIを追加する

Javaプログラミングチャレンジ:Tic-Tac-ToeプログラムにGUIを追加する

ビデオ: Week 0, continued 2025

ビデオ: Week 0, continued 2025
Anonim

ここでのJavaプログラミングの課題は、Swingを使ってプログラムにグラフィカルユーザーインターフェイス(GUI)を追加することです。 GUIはここに示すものに似ているはずです。

<! - 1 - > Tic-Tac-Toeプログラムのユーザーインターフェイス。

ゲームのプレイは簡単です。人間のプレイヤーは最初にいずれかの四角形をクリックしてプレイします。人間がクリックした四角は大きなXを表示します。人間が演奏した後、プログラムは人間が勝利したかどうかを判断します。そうであれば、メッセージが表示され、ボードがリセットされ、新しいゲームが開始されます。そうでない場合、コンピュータは移動を選択し、その正方形に大きなOを付けます。

プログラムは、コンピュータがゲームに勝ったかどうかを判断する。そうであれば、プログラムはメッセージを表示し、ボードをリセットし、新しいゲームを開始する。そうでなければ、人間のプレイヤーは再びプレイする。これは、1人のプレイヤーが勝ち、またはすべての四角が満たされるまで続きます。

あなたのプログラムは、Java Programming Challenge:Simple Tic-Tac-Toe Programにクラスを追加するために作成したものと同じTicTacToeBoardクラスを使用する必要があります。つまり、まったく同じメソッドを実装する必要があります。あなたの便宜のために、これらの方法は次の表で繰り返されます。

<! TicTacToeBoard TicTacToeBoard
コンストラクタ 説明
TicTacToeBoard すべての四角が空の新しいTicTacToeBoardを作成します。
メソッド 説明
void reset() 各四角形のステータスを空にリセットします。指定されたプレーヤの指定された正方形(A1、A2、A3、B1、B2、B3、C1、C2またはC3)をマークします(Xの場合は1、forの場合は2)。
void playAt O)。 IllegalArgumentException - squareが許容値の1つでなく、playerが1または2でない場合、または指定された四角形が空でない場合 int isGameOver()
ゲームが終了したかどうかを判定します。ゲームが終了していない場合は0、Xがゲームに勝った場合は1、Oがゲームに勝った場合は2、ゲームが抽選の場合は3を返します。ゲームの終了条件は次のとおりです。 1:行、列、または対角線にすべてのXが含まれている場合。

2:行、列または対角線にすべてのOが含まれている場合。

3:空の四角形がなく、XもOも勝っていない場合。

int getNextMove()

コンピュータの対戦相手の次の移動を表す整数を返します。この方法は、以下の戦略に従って、良い動きを選択するための基本的な努力をする必要があります。 *中心(正方形のB2)が空の場合は、中央の四角を再生します。

*センターが空ではなく、4つのコーナー(正方形A1、A3、C1、C3)のいずれかが空の場合は、コーナーの1つを演奏します(どちらのコーナーでもかまいません)。

*センターが空でなく、コーナーが空でない場合は、エッジの1つ(A2、B1、B3、またはC2の四角)を再生します。

String toString()

ボードの現在のステータスを表す文字列を返します。この文字列には、この例のように行とセパレーター行を別々のコンソール行に表示する改行文字が含まれています。 O | | O

- | - | -

| X |

- | - | -

| X |

この課題に対する解決策は、

Java Dllのためのオールインワン、 第4版製品ページのダウンロードタブにあります。 幸運!

Javaプログラミングチャレンジ:Tic-Tac-ToeプログラムにGUIを追加する

エディタの選択

IOSアプリケーション開発の既存クラスにメソッドを追加する方法 - ダミー

IOSアプリケーション開発の既存クラスにメソッドを追加する方法 - ダミー

Objective-Cでは、作成していないクラスであっても、iOSアプリケーションの既存のクラスに独自のメソッドを追加できます。クラスにメソッドを追加することは、特定の状況でのみ新しい動作が使用される場合に便利です。たとえば、特定のアプリケーション...

IOSアプリケーション開発の既存クラスにメソッドを追加する方法 - ダミー

IOSアプリケーション開発の既存クラスにメソッドを追加する方法 - ダミー

IOSアプリケーションの開発では、Objective-Cを使用すると、自分が作成していないクラスであっても、既存のクラスに独自のメソッドを追加することができます。クラスにメソッドを追加することは、特定の状況でのみ新しい動作が使用される場合に便利です。たとえば、特定のアプリケーション(たとえば、...

In App Purchase機能がiPadアプリで動作する仕組み

In App Purchase機能がiPadアプリで動作する仕組み

Apple App App Purchase機能を提供します。これにより、アプリユーザーはアプリ内から仮想アイテムを直接購入することができます。複数のレベルや環境、または仮想プロパティを持つゲームアプリケーションを開発する場合は、アプリケーションにIn App Purchase機能を追加して、レベル、環境、またはプロパティをさらに販売することを検討してください。 App Purchaseで...

エディタの選択

効果的なホームビジネスWebサイトを作成する方法 - ダミー

効果的なホームビジネスWebサイトを作成する方法 - ダミー

素晴らしいかもしれませんが、製品やサービスをさらに販売するのに役立たない場合は、時間とお金の無駄です。自宅のビジネスにとって本物の資産であるWebサイトを構築するための、実証済みの方法をいくつか試してみましょう。難しいことではありません...

マスターCSSファイルを作成する方法 - ダミー

マスターCSSファイルを作成する方法 - ダミー

多くのデザイナーがマスターHTMLコードのCSSファイルを作成し、個々のサイトのニーズに合わせて、最初からウェブサイトを構築するプロセスをスピードアップします。あなたがより多くのウェブサイトを構築するにつれて、いくつかのスタイルは標準的なデザインプラクティスの標準的な部分になります。 ...

MSN adCenterのウェブマーケティングキャンペーンのアカウントを作成する方法 - ダミー

MSN adCenterのウェブマーケティングキャンペーンのアカウントを作成する方法 - ダミー

Bing検索結果と並んでクリック単価(PPC)広告はMSN adCenterを通じて提供されます。 adCenterを使用して、Webマーケティングのニーズに合わせてアカウントとキャンペーンを作成できます。 Microsoftは、Bing Travel、adCenter Desktopなどのプログラムを追加することで、PPCサービスのインターフェース、ツール、検索品質、およびボリュームを向上させるために歩み続けています。...

エディタの選択

地中海ダイエットレシピ:フルーツサラダ - ダミー

地中海ダイエットレシピ:フルーツサラダ - ダミー

果実は地中海で豊富に生育し、地中海沿岸に沿って、アメリカ人より一般的に果実を多く食べるため、地中海の高レベルの疾病予防に貢献しています。あなたの次の食事やパーティーのために健康的なサイドディッシュのフルーツサラダを作るには、いくつかの方法があります。果物は地中海で豊富に生育し、地中海沿岸に住む人々は一般にアメリカ人よりも多くの果実を食べるため、地中海の高レベルの疾病予防に寄与します。

地中海料理ダイスレシピ:クラシックジャイロとピタ - ダミー

地中海料理ダイスレシピ:クラシックジャイロとピタ - ダミー

ジャイロとピタサンドイッチは一般的なカジュアルな食品です地中海でピザや他の地中海のサンドイッチと同じように、今日はピタサンドイッチとジャイロのさまざまなバージョンが存在します。ピタスは蒸気で作られた中央のポーチ付きの丸いパンです。