我们主要是用到Math.Random()代码来实现这个程序,
Math.random()的用法:
默认生成一个0-1(包括0不包括1的)随机double值。
Math.random()*(n-m)+m;返回指定范围的(m-n之间)的公式:
或者Math.random()*(n+1-m)+m也可以实现
既然Math.random()生成的是一个0-1之间的double值,此处举例我们要生成的随机数要在1-100之间
那么我们定义random时应该这样:
arr[i] = (int)(Math.random()*(100)+1);
其中(int)是将小数点去除,强制转换为整数
求最大值最小值就是定义一个max和min来遍历的同时记录最大最小值最后输出就行
平均值是在遍历的时候定义一个sum,最后除以数组的数的个数就行了。
代码如下:
public class random {
public static void main(String[] args){
int[] arr = new int[10];
for(int i=0; i<=9; i++){
arr[i] = (int)(Math.random()*(100)+1);
}
int sum =0;
//求平均值并且输出倒序数组
for(int i = 9; i>=0; i--){
System.out.print(arr[i]+" ");
sum += arr[i];
}
int avg = sum/10;
System.out.println("\nAverage is "+avg);
//求最大值最小值下标
int max = 0;
int maxindex = -1;
int min = 101;
int minindex = -1;
for(int i = 9; i>=0; i--){
if(arr[i] > max){
max = arr[i];
maxindex=i;
}
if(arr[i] <min){
min = arr[i];
minindex=i;
}
}
System.out.println("\nMax is "+max);
System.out.println("Max index is "+maxindex);
System.out.println("\nMin is "+min);
System.out.println("Min index is "+minindex);
}
}
输入及输出测试结果: