public static void Main()
int[,] matrix = new int[,]
int[,] newMatrix1 = RotateCW90deg(matrix);
int[,] newMatrix2 = RotateCW90deg(newMatrix1);
int[,] newMatrix3 = RotateCW90deg(newMatrix2);
int[,] newMatrix4 = RotateCW90deg(newMatrix3);
public static void Display(int[,] matrix)
for (int i = 0; i < matrix.GetLength(0); i++)
for (int j = 0; j < matrix.GetLength(1); j++)
Console.Write(matrix[i, j] + " ");
public static int[,] RotateCW90deg(int[,] matrix)
Console.WriteLine("Rotating 90deg CW...\n");
int[,] newMatrix = new int[matrix.GetLength(0), matrix.GetLength(1)];
for (int i = 0; i < matrix.GetLength(0); i++)
for (int j = 0; j < matrix.GetLength(1); j++)
Console.WriteLine("moving " + matrix[i, j].ToString() + " to [" + (matrix.GetLength(0) - 1 - j).ToString() + ", " + i.ToString() + "]");
newMatrix[matrix.GetLength(0) - 1 - j, i] = matrix[i, j];