Header Ads

[Matrix] Hoán đổi vị trí của 2 đường chéo chính


Nguồn: Click here

Viết chương trình Java để

Các bước thực hiện để viết chương trình Java:

1. Viết phương thức để hoán đổi: Dùng 1 vòng for để thay đổi giá trị của các phần tử trên đường chéo chính:

  • tmp = matrix[i][i];
  • matrix[i][i]=matrix[i][(n-i)-1];
  • matrix[i][(n-i)-1] = tmp

2. Viết phương thức để in ra ma trận

3. Trong hàm main, nhập vào 1 ma trận để test các phương thức ở trên (sinh viên có thể tạo ma trận ngẫu nhiên như trong link này)

Code tham khảo của chương trình Java:

package matrix;

public class MatrixDiagonalSwap {

    // Function to interchange diagonals of a matrix

    public static void diagonalSwap(int[][] matrix, int n) {

        for (int i = 0; i < n; i++) {

            int temp = matrix[i][i];

            matrix[i][i] = matrix[i][(n - i) - 1];

            matrix[i][(n - i) - 1] = temp;

        }

    }

    public static void printMatrix(int[][] matrix) {

        for (int i = 0; i < matrix.length; i++) {

            for (int j = 0; j < matrix[0].length; j++)

                System.out.print(matrix[i][j] + " ");

            System.out.println();

        }

    }

    // Driver code

    public static void main(String[] args) {

        int[][] matrix = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };

        int n = 3;

        diagonalSwap(matrix, n);

        // Print the interchanged matrix

        printMatrix(matrix);

    }

}


Không có nhận xét nào

Được tạo bởi Blogger.