Chuyển vị của ma trận lật ma trận qua đường chéo của nó và điều này mang lại các phần tử hàng trên cột và các phần tử cột trên hàng.
Ví dụ -
Matrix before Transpose: 123 456 789 Matrix after Transpose: 147 258 369
Hãy để chúng tôi xem một ví dụ trong C # để đạt được chuyển vị của một ma trận -
Ví dụ
using System; public class Demo { public static void Main() { int i, j, m, n; int[, ] arr1 = new int[30, 30]; int[, ] arr2 = new int[30, 30]; Console.Write("\nEnter the number of rows and columns of the matrix :\n"); Console.Write("Rows entered = "); m = Convert.ToInt32(Console.ReadLine()); Console.Write("Columns entered = "); n = Convert.ToInt32(Console.ReadLine()); Console.Write("Set elements in the matrix...\n"); for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { Console.Write("\n [{0}],[{1}] : ", i, j); arr1[i, j] = Convert.ToInt32(Console.ReadLine()); } } Console.Write("\n\nMatrix before Transpose:\n"); for (i = 0; i < m; i++) { Console.Write("\n"); for (j = 0; j < n; j++) Console.Write("{0}\t", arr1[i, j]); } for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { arr2[j, i] = arr1[i, j]; } } Console.Write("\n\nMatrix after Transpose: "); for (i = 0; i < m; i++) { Console.Write("\n"); for (j = 0; j < n; j++) { Console.Write("{0}\t", arr2[i, j]); } } Console.Write("\n\n"); } }
Kết quả sau đây sẽ được tạo ra khi chạy chương trình trên. Tại đây, các giá trị từ người dùng sẽ được nhập cho số hàng và cột cũng như các phần tử của ma trận -
Enter the number of rows and columns of the matrix :3 3 Rows entered = 3 Columns entered 3 Set elements in the matrix... [0],[0] : 1 [0],[1] : 2 [0],[2] : 3 [1],[0] : 4 [1],[1] : 5 [1],[2] : 6 [2],[0] : 7 [2],[1] : 8 [2],[2] : 9 Matrix before Transpose: 123 456 789 Matrix after Transpose: 147 258 369