Java 执行while或while循环以使用math.random生成一组20个数字
我要做的是生成一组20个不同的随机数,然后显示平均数、正数和负数。我对生成要使用的数字集感到困惑,但我认为我已经把其他所有事情都做好了Java 执行while或while循环以使用math.random生成一组20个数字,java,Java,我要做的是生成一组20个不同的随机数,然后显示平均数、正数和负数。我对生成要使用的数字集感到困惑,但我认为我已经把其他所有事情都做好了 int positive = 0; int negative = 0; int count = 0; int total = 0; int average; Random r = new Random(); int number = 0; while (count > 20) { number = r.nextInt(200);
int positive = 0;
int negative = 0;
int count = 0;
int total = 0;
int average;
Random r = new Random();
int number = 0;
while (count > 20) {
number = r.nextInt(200);
total += number;
count++;
if (number > 0) {
positive++;
}
else if (number < 0) {
negative++;
}
}
average = (double) total / count;
System.out.println("The number of positives is " + positive + " ");
System.out.println("The number of negatives is " + negative + " ");
System.out.printf("The average is: " + average);
int正=0;
int负=0;
整数计数=0;
int-total=0;
整数平均;
随机r=新随机();
整数=0;
而(计数>20){
编号=r.nextInt(200);
总数+=数量;
计数++;
如果(数字>0){
正++;
}
否则如果(数字<0){
负++;
}
}
平均值=(双)总数/计数;
System.out.println(“正数为“+正数+”);
System.out.println(“负片数为“+负片+”);
System.out.printf(“平均值为:“+平均值”);
这里有一种方法,您可以将0-100之间的20个随机数相加,然后显示结果
private int total = 0;
private int i = 0;
private Random generator = new Random();
private int pos = 0;
private int neg = 0;
private int max_int = Integer.MIN_VALUE;
private int min_int = Integer.MAX_VALUE;
private int x;
while(i < 20){
x = (int) int val = 100 - generator.nextInt(200);
if(x > max_int)
max_int = x;
if(x < min_int)
min_int = x;
if(x >= 0)
pos ++;
else
neg ++;
total += x
i++;
}
System.out.println(total / 20.0);
System.out.println("Positive number count :: " + pos);
System.out.println("Positive number count :: " + neg);
System.out.println("Max :: " + max_int);
System.out.println("Min :: " + min_int);
private int total=0;
私有整数i=0;
专用随机生成器=新随机();
私人int pos=0;
私有整数负=0;
private int max_int=Integer.MIN_值;
private int min_int=Integer.MAX_值;
私人INTX;
而(i<20){
x=(int)int val=100—generator.nextInt(200);
如果(x>max_int)
max_int=x;
如果(x=0)
pos++;
其他的
neg++;
总数+=x
i++;
}
系统输出打印项次(总计/20.0);
System.out.println(“正数计数::”+pos);
System.out.println(“正数计数::”+neg);
System.out.println(“Max::”+Max_int);
System.out.println(“Min::”+Min_int);
while((number=r.nextInt(150)-67)!=0)
这怎么知道什么时候在20点停止?r你希望while(count>=66)
做什么?我看到你的编辑。。。为什么不让我们试试while(count<60)
我不确定它是否工作,因为它没有捕获超过1个正数或负数。当我运行它时,我得到“code”6.35正数是1负数是0最大的数字是:0。最小的数字是:0。平均值是:Infinity感谢你让我明白了这一点,顺便说一句,把最小值和最大值加进去,用这两个值的平均值怎么样?我的想法是‘如果(x>max){max=x;averageMax=max/positive;}如果(x