# how to add columns from Matrices(2D array)

• 10-03-2010, 08:26 AM
John_shok
how to add columns from Matrices(2D array)
ex:

1 2
3 4
------
4 6

I was successful to add the rows but i couldnt figure out how to add the column of this array!

Thank you
• 10-03-2010, 09:09 AM
JosAH
Quote:

Originally Posted by John_shok
ex:

1 2
3 4
------
4 6

I was successful to add the rows but i couldnt figure out how to add the column of this array!

Thank you

Can you show us how you added all the rows together? Then we'll show you how to do the column additions. So the result would be:

Code:

```1 2 | 3 3 4 | 7```
kind regards,

Jos
• 10-03-2010, 09:32 AM
John_shok
int[][] a=new int[2][2];
int m=0;
int sum=0;

for(int j=0;j<a.length;j++){

for(int k=0;k<a[j].length;k++){
m=m+1;
a[j][k]=m;
System.out.print(a[j][k]+ " ");
sum+=m;
}

System.out.print(" >>> "+ sum);
sum=0;
System.out.println();
}
• 10-03-2010, 09:59 AM
JosAH
Quote:

Originally Posted by John_shok
int[][] a=new int[2][2];
int m=0;
int sum=0;

for(int j=0;j<a.length;j++){

for(int k=0;k<a[j].length;k++){
m=m+1;
a[j][k]=m;
System.out.print(a[j][k]+ " ");
sum+=m;
}

System.out.print(" >>> "+ sum);
sum=0;
System.out.println();
}

It's too bad you've done everything at the same time and in the same method. I prefer a couple of separate methods, one that adds all values in a row of a matrix and one that adds all values in a column of a matrix. Here they are:

Code:

```int addRow(int[][] matrix, int row) {   int sum= 0;   for (int col= 0; col < matrix[row].length; col++)       sum+= matrix[row][col];   return sum; } int addCol(int[][] matrix, int col) {   int sum= 0;   for (int row= 0; row < matrix.length; row++)       sum+=  matrix[row][col];   return sum; }```
As you can see both methods look alike, but one iterates over a single row (the first method) while the other one iterates over a single column (the second method).

kind regards,

Jos
• 10-03-2010, 08:53 PM
John_shok
Thank u josh! it is beautiful... I created a new class for addRow and addCol and ran it through driver class.. I was just wondering how one could get this kind of idea.. :D
• 10-03-2010, 11:23 PM
John_shok
I thought it worked out good.. but when i tried for 2x3 matrix, it created a problem
create a class for colrow
created a drive class

for(int i=0;i<num.length;i++){
System.out.println("Row"+(i+1)+": "+sumRow);

BUt for colum??
for(int i=0;i<num.length[row];i++){???

i cannot do this?? if i do only num.length[]... this will print out only till 2 columns ,, it is supposed to be 3..

for row it worked out fine..
• 10-04-2010, 12:27 AM
John_shok
Josh Thank you again.. I have figure it out ..
• 10-04-2010, 04:33 PM
JosAH
Quote:

Originally Posted by John_shok
Josh Thank you again.. I have figure it out ..

Good; I don't know what your problem was because my methods only assume that the matrix isn't 'ragged', i.e. just rectangular or square, and work fine for non-square matrixes.

kind regards,

Jos