
Javaのコンソールを利用してマルバツゲームを作りたいと思っています。
(1)2人のプレイヤーが3×3のますに「○」「×」を交互に指定して勝敗を競う
(2)2人のプレイヤー名が入力可能
順番が回ってきたらプレイヤー名表示
(3)また勝敗結果表示時にもプレイヤー名表示
(4)「○」、「×」が縦横斜めに3つ並んだ時、勝敗結果を表示
(5)3×3のマス目も作る
こんな感じで作りたいのですが、javaを勉強し始めたばかりなので
よく分かりません。
ご回答、または参考になるサイト等がありましたら教えてください。
よろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
勉強しはじめ、とのことなので。
> よく分かりません。
どこが分ってないかを、まず考えましょう。
「○×ゲームを作る」だとわからなくても、「名前を表示する」だけだったらわかるのではないでしょうか?
一度に全部やろうとしないで、一つ一つを理解しつつやってはどうでしょうか?
プログラムは、一つ一つの単純な機能の組み合わせです。
> (2)2人のプレイヤー名が入力可能
> 順番が回ってきたらプレイヤー名表示
(2-1)まず、一人の名前を入力して、それを覚えささえ、後で表示するプログラムを作りましょう。
(2-2)次に、二人の名前を入力して、それを区別して覚えささえ、後で両方とも表示するプログラムを作りましょう。
(2-3)次に、二人の名前を入力して、それを区別して覚えささえ、後で交互に複数回表示するプログラムを作りましょう。
ただし、回数はforループを使い、1回目なら一人目、2回目なら二人目、...と、ループと分岐を使うこと。単純に回数分コピペなどしない。
これを作るには
・forループの使い方
・条件によって処理をわける方法
・1,2,3,...から1,2,1,...となるようにするには?
といったことが必要です。
他も同様です。
最後に一連の動作になるようにまとめればできあがりです。
熟練者は一気にプログラミングしているように見えますが、実際にはこういう分解と再構成を頭の中でやっています。
No.1
- 回答日時:
プレイヤー名の入力も勝敗結果の表示もないけどこういうやつ?
http://java.sun.com/applets/jdk/1.3/demo/applets …
それとも、「コンソールを利用して」と書いてあるからグラフィックスは一切使わず文字の入出力だけでプレイできるようにしたいのでしょうか?
この回答への補足
ご回答ありがとうございます。
ゲームスタート時にプレイヤー名を入力させることと、
終了時に勝敗結果も表示させたいです。
Appletは使用せず、コマンドプロンプト上で
マス目を表示させて文字の入出力のみでゲームを
出来るようにしたいんですが...
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 石取りゲームをC言語プログラムで教えてください 1 2022/04/09 14:16
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 17:49
- Java javaの質問です 3人の名前をコンソールに入力して名前を表示。 3人目、入力後に「何番目の名前を表 1 2022/06/09 17:42
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- オンラインゲーム Wi-Fi、プレイヤー、勝手に侵入。 1 2022/09/20 01:45
- MySQL 【MySQL】本当に困っています。詳しい方、ご教授よろしくお願いします。 1 2023/06/03 14:18
- Excel(エクセル) 文字列を数式として変換する事はできますか? 6 2022/06/23 10:38
- Java javaについて 4人の名前と年齢をコンソールに入力して、指定した名前の年齢を表示したいです! よろ 1 2022/06/10 17:12
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
アクティブセルから、A列最終行...
-
Escキーを押すと、中断する時と...
-
EXCEL VBA ユーザーフォームの...
-
WinAPI「MsgWaitForMultipleObj...
-
Do whileでExitせず、ループの...
-
VB2010でCSVファイルの読み込み
-
DOSコマンドのループ内のTIMEコ...
-
データベースをEOFまでループさ...
-
メッセージループを調べすぎてC...
-
UWSCの終了の仕方
-
vb.netです。2次元配列の要素を...
-
エクセルの当番表を作っていま...
-
乱数の桁数指定、または範囲指定。
-
レインボー色ってどうやって表...
-
VBA for i=1 to lastrow
-
UDP:送信レートについて
-
流れ図(フローチャート)が分か...
-
VBS オーバーフローの原因
-
CSVファイルの特定の行だけを読...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
UWSCの終了の仕方
-
VBAでの一時停止と再開の方法
-
範囲指定したセルを1つずつ飛...
-
Escキーを押すと、中断する時と...
-
VBAで3秒だけ時間を止めたい
-
DoEventsが必要な理由について
-
vb.netです。2次元配列の要素を...
-
乱数の桁数指定、または範囲指定。
-
DOSコマンドのループ内のTIMEコ...
-
CSVファイルの特定の行だけを読...
-
VBA for i=1 to lastrow
-
エクセルの当番表を作っていま...
-
UWSCに制限時間を付けたいです
-
Do whileでExitせず、ループの...
-
vb.netからエクセル関数書き込み
-
null 参照の例外が実行時に発生...
-
VB.NETで素因数分解のプログラ...
-
イベントの発生を待つ
-
GIFアニメをループさせたくない
おすすめ情報