これ何て呼びますか Part2

コンピュータが1から10までの整数のどれか1つを準備します.それを当てるゲームです.
最初の持ち点が5点で,一度間違える毎に1点減点されます.0点で解答権がなくなります.
while文,break文を利用して実現しなさい.

※ 1~10の整数の乱数は, (int)(Math.random() * 10 + 1) で生成できます.
※ 効率よく動作確認を実行するため,ゲーム本体のループの直前で,答えを表示させ,
その値を参考にして成功例,失敗例を確認してもよい.
【成功例】
1~10の整数を1つ当てるゲームです.
現在の得点: 5
数字を入力して下さい > 6
現在の得点: 4
数字を入力して下さい > 7
おめでとうございます.得点: 4
【失敗例】
1~10の整数を1つ当てるゲームです.
現在の得点: 5
数字を入力して下さい > 4
現在の得点: 4
数字を入力して下さい > 3
現在の得点: 3
数字を入力して下さい > 5
現在の得点: 2
数字を入力して下さい > 2
現在の得点: 1
数字を入力して下さい > 1
残念でした.正解は 9 でした.

お願いします

.





この質問に補足する.

A 回答 (1件)

ソースコードです。


なお、例外処理は行なっていません。
stringBuilderを使用していません。



import java.util.Scanner;

public class HowManyGame {

public static void main(String[] args) {
// 得点。最初は5点。
int point = 5;
// 正解の数字を作成
int x = (int) (Math.random() * 10 + 1);
// 入力スキャナを準備
Scanner scan = new Scanner(System.in);
// ゲームの説明
System.out.println("1~10の整数を1つ当てるゲームです.");
// ループの直前で答えを表示
// System.out.println("[動作確認用表示:正解は" + x + "]");
// ループ
while (true) {
// 現在の得点を表示
System.out.println("現在の得点: " + point);
// 数字の入力を促す
System.out.print("数字を入力して下さい > ");
// 数字の入力
int answer = scan.nextInt();
// 入力結果が答えと合っているか判定
if (answer == x) {
// 成功の旨を表示
System.out.println("おめでとうございます.得点: " + point);
// ループを抜ける
break;
}
// 得点が1点しか無いか判定
if (point < 2) {
// 失敗した旨を表示
System.out.println("残念でした.正解は " + x + " でした.");
// ループを抜ける
break;
}
// ポイントを1引く
point--;
}
// 入力スキャナをクローズ
scan.close();
}
}
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報