How to mirror a matrix across the main diagonal in C#

1 Answer

0 votes
using System;

class MirrorMatrixProgram
{
    const int SIZE = 3;

    static void PrintMatrix(int[,] matrix) {
        for (int i = 0; i < SIZE; i++) {
            for (int j = 0; j < SIZE; j++)
                Console.Write(matrix[i, j] + " ");
            Console.WriteLine();
        }
    }

    static void MirrorMatrix(int[,] matrix)
    {
        for (int i = 0; i < SIZE; i++) {
            for (int j = i + 1; j < SIZE; j++) {
                int temp = matrix[i, j];
                matrix[i, j] = matrix[j, i];
                matrix[j, i] = temp;
            }
        }
    }

    static void Main()
    {
        int[,] matrix = {
            { 1, 2, 3 },
            { 4, 5, 6 },
            { 7, 8, 9 }
        };

        Console.WriteLine("Original Matrix:");
        PrintMatrix(matrix);

        MirrorMatrix(matrix);

        Console.WriteLine("Mirrored Matrix:");
        PrintMatrix(matrix);
    }
}



/*
run:

Original Matrix:
1 2 3 
4 5 6 
7 8 9 
Mirrored Matrix:
1 4 7 
2 5 8 
3 6 9 

*/

 



answered Aug 28, 2025 by avibootz

Related questions

...