2016-12-19 3 views
1
public class numberCube { 

    public static int size; 
    public static int tosses; 
    public static int random; 
    public static int value; 
    public static int values; 


    public static void cubeSize(){ 

// は、ユーザの入力に基づいて番号をランダム化についてのヘルプが必要です

String x = JOptionPane.showInputDialog 
       ("How many numbers do you want on your cube?"); 

     int size = Integer.parseInt(x); 

    } 
    public static void numTosses(){ 

をランダム化することが許可されている数値の範囲は、//倍の量を取得し得ることをランダマイザーがループ

String y = JOptionPane.showInputDialog 
       ("How many times do you want to toss the dice?"); 

     int tosses = Integer.parseInt(y); 

    } 

    public static void randomizer(){ 

//乱数を作成します。問題がどこにあるのか。ユーザーが数値の範囲と無作為化する回数を指定できるようにする必要があります たとえば、cubeSize()の場合は3を入力でき、numTosses()の場合は5を入力できます。可能な出力は次のようになります。あなたは、変数の初期化を複製している1,1,3,2,3

} 

} 
} 
+0

uh ..質問は何ですか? 'int value = 16 + random.nextInt(5);'は何をするのだろうと思っています。それが '16 + 0から4までの乱数 'になることはわかっています。それで16から20くらいの数字が返されます。 –

+0

私の悪いところは、そのコードはどこかのGoogleからコピーされています。私はどこから始めるべきかわからないので、randomizer()メソッド全体を変更することはできますが、それが最も効果的です。 – Jonathan

答えて

0

(ex: size,tosses,etc)こちら。

特定のクラスのプロパティを操作する場合は、thisというキーワードを使用する必要があります。だから、

int size = Integer.parseInt(x);this.size = Integer.parseInt(x);

int tosses = Integer.parseInt(y);なりthis.tosses = Integer.parseInt(y);

etc..

なっ次に、あなたのrandomizer()方法であなたのような何かを試みることができる:あなたはこのような何かを意味

Random random = new Random(); 
for (int i = 1; i <= this.tosses; i++) { 
    int value = 1 + random.nextInt(this.size); 
    System.out.println(value); 
} 
+0

ありがとう!完璧に働いた。 – Jonathan

+0

np!それが役に立ったのであれば、それを受け入れることを忘れないでください。将来的に他の人にとって役に立つかもしれません!ハッピーコーディング... –

0

を?

Random r = new Random(); 
for (int i = 0; i < numTosses; ++i) { 
    int rand = 1 + r.nextInt(cubeSize); 
    // use rand, which will be an integer from 1 to cubeSize (inclusive) 
} 
+0

はい、それは私が欲しいものですが、実際の数値の代わりに変数を使用すると何も出力されないようです。 – Jonathan

関連する問題