- 締切済み
このJAVAの問題の答えを教えてください
入門書みたいなものにあった問題なんですが回答がない(なくした?)ので教えていただきたいです。 問題は ランダムに設定した数を当てるプログラムを作成しなさい なお、10回までに当たらなければ、正解を表示して終了すること。 数字を入力→100 大きすぎます、もう一度入力してください 2回目→50 小さいです、もう一度入力してください 3回目→60 小さいです、もう一度入力してください 75→あたりです、おめでとう。 (または・・・) 正解は75でした、またチャレンジしてね。 こういう風に表示するプログラムです。 すごく基本的なことだと思うのですが、よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- DiveKo
- ベストアンサー率70% (7/10)
↓でどうでしょうか?(コンパイル通してないけど) *============== import java.io.*; import java.util.Random; public class SampleDemo { public static void main(String[] args){ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int inputData = -1; boolean ok = false; // ランダムに設定した数を設定 Random rnd = new Random(); int ran = rnd.nextInt(100); // ユーザ入力(10回まで) for(int cnt = 0;cnt < 10;cnt++) { try { inputData = br.readLine(); if (inputData == ran) { System.out.println("あたりです、おめでとう。"); ok = true; break; } else if (inputData < ran) { System.out.println("大きすぎます、もう一度入力してください"); } else { System.out.println("小さいです、もう一度入力してください"); } } catch (Exception e) { System.out.println("Error : " + e); } if (ok != true) { // 当たらなかった場合の処理(当たったら実行されない) System.out.println("正解は" + ran + "でした、またチャレンジしてね。" ); } } } } *============== 乱数は、参考URLをご参照ください。
- taka-ayu24
- ベストアンサー率55% (5/9)
乱数の使い方がわからないのですね。乱数の使い方は以下の通りです。 public class Ran{ public static void main(String[] args){ int ran = (int)(Math.random()*10); System.out.println(ran); } } うえの例は0~10までの乱数を発生させるクラスを定義しました。 乱数は基本的にMathクラスのrandom()メソッドを用いて発生させます。 randomメソッドは0~1までのランダムの数値を発生させるメソッドです。上の例ではint ran = (int)(Math.random()*10); となっているので10倍されて0~10までの乱数を発生させているわけです。乱数についてはこれでわかったと思います。また何かあったら質問してください。
- askaaska
- ベストアンサー率35% (1455/4149)
入門書?の問題なんでしょ? この問題が出てくるまでに プログラムの実装し方は 載っていると思うけど? もし載っていないのであれば その入門書らしきものは 利用しない方がいいわ。 乱数の使い方は 「Java 乱数」でGoogleとかで検索すれば すぐ出てくるわ。
- taka-ayu24
- ベストアンサー率55% (5/9)
回答をしてあげたいのですが、あなたなりに考えたことを伝えてもらわないとこちらも対応しにくいです。たとえば今回の問題の場合、多少なりとも自分なりにかけるプログラムを書いて投稿してください。そうすればこちらも訂正しやすいです。 もしぜんぜんわからなくてももっと具体的にどこがわからないのか、たとえばランダムな数値を設定する方法は?とか条件より小さいとか大きいとかはどのようにプログラミングするべきなの?とか質問するときは全部ではなく、部分部分わからないことを聞いていきましょう。そうすればすこしずつ理解が深まっていきますよ。がんばってください
お礼
ありがとうございます>< わからないところですが、この問題の乱数の使い方がわかりません><あと、命令文の大まかな流れもわかんない状態なんです。 まだはじめて数日で、全然わかってない状態です よろしくお願いします
お礼
ありがとうございます 一応回等を見て、そっからどうしてこういう風になるのかを考えてみようと思ってたので、まず問題とその答えに目がいってました とりあえず色々自分で調べてみようかと思います