Blog de conocimiento gratuito: linux, programación, open source, bases de datos, android, frameworks, web e informática en general.
Hoy vamos a trabajar con matrices en Java. Veremos cómo sumar una diagonal de la matriz o mejor dicho: cómo sumar las dos diagonales de una matriz.
De este modo al final tendremos una función que recibirá la matriz de la cual hay que sumar la diagonal, y la diagonal a usar (la principal o la secundaria) devolviendo la suma de la diagonal indicada.
Todo esto lo vamos a hacer con Java.
Antes de pasar a la solución del ejercicio veamos cómo imprimir la matriz. Es un código muy simple con dos ciclos for:
Si te preguntas por el %5d
es porque quiero dejar un espacio en todos los números para que los mismos sean alineados sin importar sus longitud.
La diagonal principal (según yo) es la que va desde 0,0
hasta N,N
en donde N
es la longitud de la matriz menos 1. O en otras palabras, desde la esquina superior izquierda hasta la esquina inferior derecha.
Por otro lado, la diagonal secundaria es la que va desde X
en 0, Y
en N
en donde N
es la longitud de la matriz menos 1 y termina en X
en N
y Y
en 0. O dicho de otra manera, desde la esquina inferior izquierda hasta la esquina superior derecha.
Vayamos al código, en este caso simplemente hacemos un ciclo while que hará que recorramos la diagonal de la matriz ya sea la principal o secundaria.
En este caso la diagonal se indica con una String
.
Al final regresamos la suma. Ahora veamos cómo usar esta función.
El código completo que incluye la impresión de la matriz y la llamada a sumarDiagonal
queda como se ve a continuación en el ejemplo que suma la diagonal principal y la secundaria:
Por cierto, este código funcionará para matrices de cualquier tamaño, siempre y cuando las mismas tengan la misma cantidad de filas y columnas.
El código funciona correctamente como puedes apreciar en la imagen del resultado. Igualmente puedes probar el ejercicio en línea y leer más sobre Java en el blog de Parzibyte.