Поменять местами элементы главной и побочной диагонали целочисленного двумерного массива - C#

Узнай цену своей работы

Формулировка задачи:

Замечание. Для хранения массив n×n использовать двумерный или ступенчатый массив. Свой выбор обосновать. Поменять местами элементы главной и побочной диагонали.

Решение задачи: «Поменять местами элементы главной и побочной диагонали целочисленного двумерного массива»

textual
Листинг программы
        private void button4_Click(object sender, EventArgs e)
        {
            /// нулями после масива хзоть с 1 нулем
            int n = 5;
            Random gen = new Random();
            string sMassiv = "";
            string sMassivNew = "";
 
 
            int[,] myMatrix = new int[n,n];
            int[,] myMatrixNew = new int[n, n];
 
            int[] mainD = new int[n];
            int[] secondD = new int[n];
 
            /// запоминаем диагонали
            for (int i = 0; i < n; i++)
                for (int j = 0; j < n; j++)
                {
 
                    myMatrix[i, j] = gen.Next(0, 100);
 
                    if (i == j)
                        mainD[i] = myMatrix[i, j];
 
                    if (i == 4 - j)
                        secondD[i] = myMatrix[i, j];
 
 
                }
 
           // меняем местами
            for (int i = 0; i < n; i++)
                for (int j = 0; j < n; j++)
                {
 
                    myMatrixNew[i, j] = myMatrix[i, j];
 
                    if (i == 4 - j)
                        myMatrixNew[i, j] = mainD[i];
                   
                        if (i == j)
                        myMatrixNew[i, j] = secondD[i];
 
 
                }
 
 
 
 
 
            for (int i = 0; i < n; i++)
            {
                sMassiv += "\n";
                sMassivNew += "\n";
                for (int j = 0; j < n; j++)
                {
                    sMassiv += myMatrix[i, j] + ";";
                    sMassivNew += myMatrixNew[i, j] + ";";
                }
 
            }
 
 
 
 
            MessageBox.Show("Начальный массив:\n" + sMassiv + "\n" + "Главная диагональ:\n" + string.Join(";", mainD) + "\n" + "Побочная диагональ:\n" + string.Join(";", secondD)+"\n Получившийся массив:\n" + sMassivNew);
 
 
 
        }

Оцени полезность:

13   голосов , оценка 4.077 из 5
Похожие ответы