作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的java编码课的作业要求我找到一个 double 二维数组和一个整数二维数组的不规则二维数组的平均值。我相信我的代码是正确的,但不是对数组求平均值,而是将其除以 2。任何帮助将不胜感激!
代码:
public static void main(String[] args) {
// adds to 22
double[][] a = {{7.0, 6.0, 5.0}, {3.0, 1.0}};
//adds to 48
int[][] b = {{4, 6}, {9, 8, 10, 11}};
int i = 0;
System.out.println("arrayAverage = " + arrayAverage(a));
System.out.println("arrayAverage = " + arrayAverage(b));
}
/**
* computes the average for an array of a double
*/
public static double arrayAverage(double a[][]) {
double sum = 0.0;
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
sum += a[i][j];
}
}
System.out.println("Calculating Double Array");
return sum / a.length;
}
/**
* Computes the average for an array of integers.
*/
public static int arrayAverage(int b [][]) {
int sum = 0;
for (int i = 0; i < b.length; i++) {
for (int j = 0; j < b[i].length; j++) {
sum += b[i][j];
}
}
System.out.println("Calculating Integer Array");
return sum / b.length;
}
}
run:
Calculating Double Array
arrayAverage = 11.0
Calculating Integer Array
arrayAverage = 24
BUILD SUCCESSFUL (total time: 0 seconds)
最佳答案
除以a.length
时,您将除以2
,因为这是数组a
的长度。数组 a
中有两项:{7.0, 6.0, 5.0}
和 {3.0, 1.0}
。
要对数组中的所有数字进行平均,您需要通过将子数组的长度相加来计算所有数字。声明一个 count
变量,并在 i
for 循环中,向其中添加子数组 a[i].length
的长度。然后除以最后的count
。
请小心整数除法的 int[][]
平均方法,其中小数会被截断。
关于java - 参差不齐的双二维数组的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16327550/
我是一名优秀的程序员,十分优秀!