我必须编写一个程序来创建一个2d数组,并询问用户行和列的大小。
创建二维数组,比如m:
要求用户从键盘输入行和列的大小(使用扫描仪(
假设你的ssn编号的最后一位是N,如果用户输入的列大小大于N+5,请用户重新输入列大小
使用随机对象将所有数组元素填充为(4.0,11.0(范围内的双数
通过上面的数组m并调用以下两种方法
findMaxCol(m(
returnAvg(m(
打印出阵列m 的平均值
在findMaxCol(双[][]数组(中,查找并打印二维数组中的最大列和
在returnAvg(double[][]数组中查找数组中所有元素的平均值,并返回平均
我很难让随机类发布double并找到平均值的max列。
Scanner console=new Scanner(System.in);
findMaxcoumn();
returnAvg();
double Random =new Random().nextDouble();
int lastdigit=8;
System.out.println("Write a row");
int n=console.nextInt();
System.out.println("write column");
int y=console.nextInt();
int [][] array=new int[n][y];
if(y>lastdigit+5){
System.out.println("Write a column again");
int k=console.nextInt();
int [][] array2=new int[n][k];
int [][] array2=rand.nextdouble(8.0)+4.0;
}
}
}
}
您可能需要进一步了解数组的工作方式。您使用以下行创建阵列:
int [][] array2=new int[n][k];
这应该很好,但你的下一行是:
int [][] array2=rand.nextdouble(8.0)+4.0;
据我所知,这个人什么都不做。您需要使用两个循环,一个用于数组的第一个维度。另一个是第二个维度的内部循环。例如:
for(int i = 0; i < n; i++) {
for(int j = 0; j < k; k++) {
array2[i][k] = rand.nextDouble(8.0) + 4.0;
}
}
请尝试阅读Oracle的文档。