

このjavaじゃんけんゲームで 0を押すまでじゃんけんが続いて0押したら終了して、終了と表示して、じゃんけんの勝敗が表示されるように作りたいんですけどどうしたらいいですか?教えてください
import java.io.*;
class kadai6
{
public static void main(String args[]) throws IOException
{
System.out.println("これは、じゃんけんゲームです。");
System.out.println("あなたの手を入力して下さい。(1:グー、2:チョキ、3:パー、0:終了)さぁどれにしますか?");
BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
int res =Integer.parseInt(str);
switch(res){
case 1:
System.out.println("あなたの手はグーです。");
break;
case 2:
System.out.println("あなたの手はチョキです。");
break;
case 3:
System.out.println("あなたの手はパーです。");
break;
default:
System.out.println("あなたの入力した値はエラーです。1~3の値を入力してください。");
System.exit(1);
break;
}
int comp = (int)(Math.random()*3) + 1;
switch (comp){
case 1:
System.out.println("コンピュータの手はグーです。");
break;
case 2:
System.out.println("コンピュータの手はチョキです。");
break;
case 3:
System.out.println("コンピュータの手はパーです。");
break;
default:
System.out.println ("エラーです。");
break;
}
switch (res -comp) {
case -2:
System.out.println("コンピュータの勝ちです。");
break;
case -1:
System.out.println ("あなたの勝ちです。");
break;
case 0:
System.out.println ("あいこです。");
break;
case 1:
System.out.println ("コンピュータの勝ちです。");
break;
case 2:
System.out.println("あなたの勝ちです。");
break;
default:
System.out.println ("エラーです。");
break;
}
}
}
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
「じゃんけんクラスを書いて、自分の手をsetterで与えて
結果をgetterで取り出す」
という仕様にしないとダメです。
現行は、メインメソッドの中で、じゃんけんをしたり
結果をコンソール出力したり、ごちゃごちゃになっています。
少なくとも、この2つは分離してないといけないでしょう。
この意味は分かりますか?
日常生活から考えて、じゃんけんすることと、結果を画面に
表示することは全く無関係な事だからです。
基本的なオブジェクト指向設計の方法を勉強されるのが
良いと思います。
今、Javaの書籍はお持ちになっておられるでしょうか?
私が、簡単なじゃんけんクラスを書いてみましょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Ruby vscode 文字化け 1 2022/05/21 19:17
- JavaScript jsで、switch文で書かれた分をif文にできませんか。 1 2022/07/28 15:10
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- 英語 この英文の意味を教えてください 3 2023/07/07 20:36
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語のポインターに関する警告
-
JSPやサーブレットでSystem.out...
-
[JAVA]try 内の変数を外で!?
-
eclipse,mysql,javaエラー
-
文字列のエラーチェック
-
Javaの引数を使ってチェックし...
-
サーブレットについて
-
JAVAの初心者です。
-
EclipseでJava
-
文字列の引き算
-
javaじゃんけんゲーの質問
-
Scanner と BufferedReader
-
「続行するには何かキーを押し...
-
会員情報登録プログラムの作成...
-
複数行キーボード入力した後に...
-
jspでHTMLの配色を変数に代...
-
JAVAのDouble型の小数点以下の...
-
Javaで文字と数字が混ざったも...
-
数値⇒漢数字変換 java
-
System.err. printlnとSystem.o...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語のポインターに関する警告
-
JSPやサーブレットでSystem.out...
-
EclipseでJava
-
[JAVA]try 内の変数を外で!?
-
JAVAのDouble型の小数点以下の...
-
文字列の引き算
-
「続行するには何かキーを押し...
-
会員情報登録プログラムの作成...
-
Javaのコマンドライン引数を使...
-
Javaでカレントディレクトリを...
-
java プログラミングについて
-
複数行キーボード入力した後に...
-
JAVA 文字色変更
-
エクセルマクロ文で、赤文字セ...
-
配列を後ろから数えるには?
-
改行の判定方法
-
java シンボルが見つかりません...
-
JAVA 三角形の判定
-
JAVAのエラーの意味が分かりま...
-
nullcline
おすすめ情報