public static void Main(string[] args)
Console.WriteLine("Hello World!");
int[,] matrix = new int[3, 3]
int[,] resultMatrix = new int[3, 3]
int[,] matrix2 = new int[4, 4]
int[,] resultMatrix2 = new int[4, 4]
int[,] result1 = Reverse1(matrix);
int[,] result2 = Reverse2(matrix);
Console.WriteLine(Compare(resultMatrix, result1));
Console.WriteLine(Compare(resultMatrix, result2));
int[,] result21 = Reverse1(matrix2);
int[,] result22 = Reverse1(matrix2);
Console.WriteLine(Compare(resultMatrix2, result21));
Console.WriteLine(Compare(resultMatrix2, result22));
Console.WriteLine("Press ENTER to exit.");
private static bool Compare(int[,] matrix1, int[,] matrix2)
int m = matrix1.GetUpperBound(0) + 1;
int n = matrix1.GetUpperBound(1) + 1;
for (int i = 0; i < m; i++)
for (int j = 0; j < n; j++)
if (matrix1[i, j] != matrix2[i, j])
private static int[,] Reverse1(int[,] matrix)
int m = matrix.GetUpperBound(0) + 1;
int n = matrix.GetUpperBound(1) + 1;
int[,] res = new int[n, m];
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
res[i, j] = matrix[j, i];
private static int[,] Reverse2(int[,] matrix)
int m = matrix.GetUpperBound(0) + 1;
int n = matrix.GetUpperBound(1) + 1;
for (int i = 0; i < n; i++)
for (int j = 0; j <= i; j++)
matrix[i, j] = matrix[j, i];