Untitled
unknown
plain_text
a year ago
1.9 kB
4
Indexable
import java.util.Scanner; public class _03_DiagonalDifference { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int[][] matrix = new int[n][n]; // 1. Прочиитаме матрицата от конозлата fillTheMatrix(matrix, scanner); // 2. Намираме сумата на главният диагонал int primaryDiagonalSum = getPrimaryDiagonalSum(matrix); // 3. Намираме сумата на второстепенният диагонал int secondaryDiagonalSum = getSecondaryDiagonalSum(matrix); // 4. Отпечатваме абсолютната стойност на разликата на двете суми System.out.println(Math.abs(primaryDiagonalSum - secondaryDiagonalSum)); } private static int getPrimaryDiagonalSum(int[][] matrix) { int sum = 0; // Локациията е: индекс на реда == индекс на колона for (int index = 0; index < matrix.length; index++) { int num = matrix[index][index]; sum += num; } return sum; } private static int getSecondaryDiagonalSum(int[][] matrix) { int sum = 0; // Ред: от последен към 0 // Колона: 0 докато има редове (всеки път +1) int col = 0; for (int row = matrix.length - 1; row >= 0; row--) { int num = matrix[row][col]; sum += num; col++; } return sum; } private static void fillTheMatrix(int[][] matrix, Scanner scanner) { for (int row = 0; row < matrix.length; row++) { for (int col = 0; col < matrix.length; col++) { matrix[row][col] = scanner.nextInt(); } } } }
Editor is loading...
Leave a Comment