【发布时间】:2020-09-13 00:59:43
【问题描述】:
我有一个这样的二维数组:
然后用户输入一个奇数值(长度)以及坐标进行平均计算,例如:
长度值减半并从坐标中添加/减去以形成一个正方形以计算该值平方的平均值
这是我的循环,但它没有正确计算平均值
int counter = 0;
double sum = 0;
for (int x = x1; x < x2; x++) {
for (int y = y1; y < y2; y++) {
sum = sum + (array[x][y]);
counter++;
}
}
average = sum / counter;
对不起,糟糕的图表
当我使用这个数组运行循环并且提供的输出值是 3.5 时,它本来应该是 3.2
【问题讨论】:
-
“它没有正确计算平均值”是什么意思?你能提供例子吗?在您的图表中,这些值的总和似乎为 80,因此平均值为 80/25 = 3,2。
-
顺便说一句,您的方法似乎是正确的,我能看到的唯一问题是您应该使用
x <= x2´ andy x2 和y2是包含坐标。您的代码当前跳过了矩形的最后一列和最后一行。 -
谢谢,我发现了我的错误,是我很傻
标签: java arrays loops multidimensional-array average