Está en la página 1de 3

Problema:

Dada una matríz de tamaño n x n que almacena números enteros, la cual recibes
como parámetro, debes desarrollar la lógica que permita calcular el valor
absoluto de la diferencia de sus diagonales.

Restricciones:

 Sólo se tiene que desarrollar la lógica de la función calcularDiagonales no


es necesario hacer funciones adicionales ni main.
 Se debe retornar un valor no un objeto de otro tipo.
 La solución debe ser genérica, debe servir para matrices cuadradas de
cualquier tamaño.
 Para el desarrollo del reto usar lenguaje java

Ejemplo:
Matriz de tamaño 3x3
1 2 3
4 5 6
9 8 7

Donde su diagonal principal está compuesta por los valores: 1 + 5 + 7 = 13


Donde su diagonal secundaria está compuesta por los valores: 3 + 5 + 9 = 17
Donde el valor absoluto de la diferencia de las dos diagonales es: |13 - 17 |= 4

http://javaprincipiates.blogspot.com/2010/07/matriz-3x3-presenta-
diagonal-principal.html

Matriz 3x3, Presenta, Diagonal Principal y Secundaria


public class matriz {

public static void main(String[] args) {


int numeros[][] = new int[3][3];
int valor;
Scanner lector = new Scanner(System.in);

System.out.println("MATRIZ CUADRADA 3 X 3");


for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
System.out.println("Ingrese el valor de " + i + " y" + j + ": ");
valor = lector.nextInt();
numeros[i][j] = valor;
}
}

System.out.println("");
System.out.println("Presentacion de la matriz");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
System.out.print(numeros[i][j] + "\t");
if (j == 2) {
System.out.print("\n");
}
}
}

System.out.println("");
System.out.println("Diagonal Principal");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (i == j) {
System.out.print(numeros[i][j] + " ");
}
}
}
System.out.println("\n");
System.out.println("Diagonal Secundaria");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (i == 0 && j == 2) {
System.out.print(numeros[i][j] + " ");
}
if (i == 1 && j == 1) {
System.out.print(numeros[i][j] + " ");
}
if (i == 2 && j == 0) {
System.out.print(numeros[i][j] + " ");
}
}
}
System.out.println("\n");
}
}

También podría gustarte