public class MatrizSumas {
public static void main(String[] args) {
int[][] matriz = { {4, 0, 9, 15, 3}, {5, 8, 10, 23, 6}, {6, 5, 10, 2, 1}, {10, 0, 1, 1, 1}, {0, 2, 7, 9, 4}, {25, 15, 37, 10, 9} };
int[] sumaReng = sumaRenglones(matriz);
int[] sumaCol = sumaColumnas(matriz);
System.out.println("Valores de Matriz"); for (int reng = 0; reng < matriz.length; reng++) { System.out.print("[ "); for (int col = 0; col < matriz[0].length; col++)
System.out.print(matriz[reng][col] + " ");
System.out.println("]"); }
System.out.println("\nSumas Renglones"); System.out.print("[ "); for (int i = 0; i< sumaReng.length; i++)
System.out.print(sumaReng[i] + " ");
System.out.println("]");
System.out.println("\nSumas Columnas"); System.out.print("[ "); for (int i = 0; i< sumaCol.length; i++)
System.out.print(sumaCol[i] + " ");
System.out.println("]");
}
private static int[] sumaRenglones(int[][] mtz) { //Nuevo arreglo con longitud según cantidad renglones
int[] sumas = new int[mtz.length];
/*
* Usamos dos bucles anidados.
* El primero sirve para recorrer el nuevo arreglo
* y cada renglón de la matriz.
* El segundo recorre las columnas de cada renglón,
* para sumar sus valores.
*/
for (int renglon = 0; renglon < mtz.length; renglon++) { for (int columna = 0; columna < mtz[0].length; columna++) { sumas[renglon] += mtz[renglon][columna];
}
}
//Renglones sumados, retornamos arreglo con las sumas
return sumas;
}
private static int[] sumaColumnas(int[][] mtz) { //Nuevo arreglo con longitud según cantidad columnas
int[] sumas = new int[mtz[0].length];
/*
* Como en el método anterior, usamos dos bucles.
* Esta vez, el primero recorrerá el arreglo y las columnas
* de la matriz.
* El segundo recorre los renglones de cada columna,
* para sumar sus valores
*/
for (int columna = 0; columna < mtz[0].length; columna++) { for (int renglon = 0; renglon < mtz.length; renglon++) { sumas[columna] += mtz[renglon][columna];
}
}
//Tenemos las sumas, las retornamos
return sumas;
}
}