做数学题有困难
类应该将值设置为两个数字(包括两个数字)之间的一个随机数。
交货。如果传入的是20,而平均值是70,那么它将生成一个介于60和80之间的随机数,然后将其作为值存储。
我知道部分公式是:(average - range/2)和(average + range/2)。
range =传入的数字
您要做的就是使用Random
对象在您的范围内获得随机数。下面的代码在一个循环中得到10个。
import java.util.Random;
public class RandomNumber
{
public static void main(String[] args) {
int range = 20;
int average = 70;
int base = average - range/2;
Random rand = new Random();
for (int i = 0; i < 10; i++) {
int num = rand.nextInt(range + 1) + base;
System.out.println(num);
}
}
}
由于调用nextInt(int n)
方法返回从0(包含)到n(不包含)的随机数,您必须传递它range + 1
,因为您希望包括范围的两端,而不仅仅是低端。使用上面使用的值,对rand.nextInt(range + 1)
的调用将返回从0到20的值。当加上60的base
值时,这些值被转换为60 - 80。