我正在寻找一种方法来添加数组行的元素并获得总和。我也必须得到列的总和。 该数组看起来像这样:
{{45.24, 54.67, 32.55, 25.61},
{65.29, 49.75, 32.08, 26.11},
{25.24, 54.33, 34.55, 28.16}};
例如,我会添加45.24,65.29和25.24来获取该部分列的总和。然后我还要添加其他3列。 行也一样。 我不断收到有关变量类型的错误。有没有办法做到这一点?感谢。
答案 0 :(得分:0)
逻辑将是--->
for(i = 0; i < columns; i++)
{
for(j=0; j<rows; j++)
{
sum+=arr[j][i];
}
}
与列相对
答案 1 :(得分:0)
假设您有nxn
矩阵。我们的想法是确定模式。
行值
i j
0 0
0 1
0 2
列值
i j
0 0
1 0
2 0
i
和j
值的位置相反。
假设我们有一个数组a[][]
。逻辑是:
for (int i=0; i<n; i++) {
int row = 0, col = 0;
for (int j=0; j<n; j++) {
row += a[i][j];
col += a[j][i];
}
System.out.println("row" + i + " = " + row);
System.out.println("col" + i + " = " + col);
}
我假设你想要分别对每行和每列的总和。你可以相应地修改它。
答案 2 :(得分:0)
我认为您应该定义数组将处理的数字类型,如果我使用浮点数,我可以使用类似下面的类来执行您要求的操作类型。您还可以添加一些小数格式。
public class Test {
public static void main(String[] args) {
new Test();
}
public Test() {
float myarray[][]= {
{45.24f, 54.67f, 32.55f, 25.61f},
{65.29f, 49.75f, 32.08f, 26.11f},
{25.24f, 54.33f, 34.55f, 28.16f}
};
float row[] = new float[3];
float column[] = new float[4];
for (int i=0; i < 3; i++) {
float rowvalue = 0f;
for (int j=0; j < 4; j++) {
System.out.print(myarray[i][j]+" ");
rowvalue+=myarray[i][j];
}
row[i]=rowvalue;
System.out.println("");
}
System.out.println("");
for (int i=0; i < 4; i++) {
float colvalue = 0f;
for (int j=0; j < 3; j++) {
System.out.print(myarray[j][i]+" ");
colvalue+=myarray[j][i];
}
column[i]=colvalue;
System.out.println("");
}
System.out.println("Rows answer:");
for (int i=0; i < 3; i++) {
System.out.println(row[i]);
}
System.out.println("Columns answer:");
for (int i=0; i < 4; i++) {
System.out.println(column[i]);
}
}
}