两者产生随机数,其乘积不同
The two generate random numbers and their product is different
所以我创建了一个生成 2 个随机数并需要将它们相乘的程序:
public static int thenumber(){
int number1=(int)(Math.random()*10+1);
return number1;
}
public static int thenumber2(){
int number2=(int)(Math.random()*10+1);
return number2;
}
并在 :
中解决
public static int thefusion(){
int demi =thenumber() * thenumber2();
return demi;
}
我的问题是当我 运行 两个数字的乘积不同
例如:7 * 4 = 24
一个完整的代码示例会很好(参见 How to create a Minimal, Complete, and Verifiable example),但让我猜猜:您首先看到的是两个随机数(通过打印或其他方式)。然后你调用你的方法。该方法从 thenumber()
和 thenumber2()
中抽取两个 new 随机数。这就是(伪)随机数的要点,你每次都不会使用相同的数字。所以如果你第一次抽到数字7和4,也许下次你抽到3和8,所以乘积是24。
有几个可能的解决方案:
- 调用
thenumber()
和thenumber2()
时,将结果赋给两个变量。现在你可以看到你得到了哪些数字。将这两个数字传递给您的 thefusion
方法,它应该会计算出预期的产品。
- 而不是
Math.random()
使用 Random
class 并使用已知种子实例化它。从中提取两个数字并检查它们。从同一种子创建一个新的 Random
实例并让 thefusion()
使用它。现在它将绘制相同的两个数字,您将得到您期望的产品。
所以我创建了一个生成 2 个随机数并需要将它们相乘的程序:
public static int thenumber(){
int number1=(int)(Math.random()*10+1);
return number1;
}
public static int thenumber2(){
int number2=(int)(Math.random()*10+1);
return number2;
}
并在 :
中解决public static int thefusion(){
int demi =thenumber() * thenumber2();
return demi;
}
我的问题是当我 运行 两个数字的乘积不同 例如:7 * 4 = 24
一个完整的代码示例会很好(参见 How to create a Minimal, Complete, and Verifiable example),但让我猜猜:您首先看到的是两个随机数(通过打印或其他方式)。然后你调用你的方法。该方法从 thenumber()
和 thenumber2()
中抽取两个 new 随机数。这就是(伪)随机数的要点,你每次都不会使用相同的数字。所以如果你第一次抽到数字7和4,也许下次你抽到3和8,所以乘积是24。
有几个可能的解决方案:
- 调用
thenumber()
和thenumber2()
时,将结果赋给两个变量。现在你可以看到你得到了哪些数字。将这两个数字传递给您的thefusion
方法,它应该会计算出预期的产品。 - 而不是
Math.random()
使用Random
class 并使用已知种子实例化它。从中提取两个数字并检查它们。从同一种子创建一个新的Random
实例并让thefusion()
使用它。现在它将绘制相同的两个数字,您将得到您期望的产品。