javaで数字当てゲーム作りたいです。
ここまで出来ています。
しかし、もう一度やりますか?というオプションで、yと入力すればもう一回、 nと入力すれば終わるようにしたいです。
それから、最後に何回ゲームを遊んだか、トータルで数字を何回予想したか、という情報も出力したいです。
できれば、正解するまでに平均で何回かかったかと、一番少なかった数も出力したいです。
よろしくお願いします
import java.util.*;
public class NumberGuess {
public static void main(String args[]) {
boolean b = true;
int computer = (int) (Math.random() * 100) + 1;
int player = 0;
int count = 0;
System.out.println("1~100の数当てゲーム");
if (computer < 0) { computer *= -1;}
while (b) {
count++;
Scanner keyboard = new Scanner(System.in);
System.out.print("1~100の数字を入力してください ");
player = keyboard.nextInt();
if (computer > player) {
System.out.println("CPUが作成した数字はもっと大きいです");
} else if (computer < player) {
System.out.println("CPUが作成した数字はもっと小さいです");
} else if (computer == player) {
System.out.println( count + "回目で当てました");
}
}
}
}
直すべきところもあれば教えてください。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
変数 computer は必ず 0 以上なので、正負逆転は不要
参考) http://docs.oracle.com/javase/jp/7/api/java/lang …
繰り返し処理 while(b){} の終了条件がない
おそらく「当てました」あたりで処理追加が必要
ランダム数を決めるから、当てましたまでの処理を、
一つのメソッドとして分離すべき
例) /* @return 正解するまでの回数 */ protected int playGameOnce()
メソッド main にて、ゲームの制御を行う
1. 統計情報の変数を初期化
2. 上記のメソッドを呼ぶ
3. 正解するまでの回数を取得して、統計情報を更新する
4. 続行の質問をして、"y" なら 2 に戻る
5. 統計情報を表示しておしまい
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- Ruby パイソンプログラミング 2 2022/12/03 18:44
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java Java 配列<選挙> 4 2023/07/31 15:07
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- Ruby vscode 文字化け 1 2022/05/21 19:17
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# プログラミング c言語 4 2023/03/07 01:05
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ループ処理の際、最後だけ","を...
-
テキストボックスに入力された...
-
Randomメソッドの確率設定
-
7つ数字を表示したら改行すると...
-
countに実行した回数をいれたい...
-
続・ZZZ,ZZZ,ZZ9形式の金額形式...
-
java キーボード入力された値の...
-
C#の質問
-
キーボードから10人分の点数を...
-
2つのスクロールバーを連動させ...
-
javaプログラムについて
-
数値⇒漢数字変換 java
-
繰り返しによる星印の出力
-
配列を逆順させて表示させる方...
-
点数をだす時に、maxとminがお...
-
要素数が10の配列で、乱数0~9...
-
Javaの練習問題
-
コマンドライン引数の例外処理...
-
2次元配列の並び替え
-
javaで素数判断プログラム作成...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ループ処理の際、最後だけ","を...
-
java キーボード入力された値の...
-
Java、2の0乗~10乗の表示
-
コマンドライン引数の例外処理...
-
数値⇒漢数字変換 java
-
Ctrl+Zが入力されると終了する...
-
続・ZZZ,ZZZ,ZZ9形式の金額形式...
-
countに実行した回数をいれたい...
-
論理演算子”||”またはの入力方法
-
7つ数字を表示したら改行すると...
-
テキストボックスに入力された...
-
配列を逆順させて表示させる方...
-
繰り返しによる星印の出力
-
Java 入力した整数値の合計を、...
-
キーボードから10人分の点数を...
-
JAVAのfor文で困っています。
-
階乗の式
-
要素数が10の配列で、乱数0~9...
-
Java キーボードから負の数が入...
-
Randomメソッドの確率設定
おすすめ情報