Многомерный массив в обратном порядке - C#
Формулировка задачи:
Листинг программы
- var b = new[,]
- {
- {5, 10, 8, -4, 62},
- {20, 2, 9, 9, -1},
- {5, 10, 1, 8, 1},
- {6, 1, 2, 6, -5},
- {95, 5, 1, 3, 2}
- };
- for (int row = 0; row < 5; row++)
- {
- for (int col = 0; col < 5; col++)
- {
- Console.Write("|" + a[row, col] * b[row, col]);
- }
- Console.WriteLine("|");
- }
Как собственно говоря это сделать. Array.Reverse только с одномерным работает.
Решение задачи: «Многомерный массив в обратном порядке»
textual
Листинг программы
- var n = 5;
- var m = 5;
- // создание массива
- var rnd = new Random();
- var sourceArray = Enumerable.Range(0, n).Select(v => Enumerable.Range(0, m).Select(c => rnd.Next(1, 39)).ToArray()).ToArray();
- Console.WriteLine("Исходный массив:\n" + String.Join("\n", sourceArray.Select(v => String.Join(" | ", v))));
- // вьіполнение самих перестановок
- var halfN = sourceArray.Length / 2 + (sourceArray.Length % 2);
- for (var i = 0; i < halfN; i++)
- {
- var end_i = sourceArray.Length - 1 - i;
- for (var j = 0; j < sourceArray[i].Length; j++)
- {
- var end_j = sourceArray[i].Length - 1 - j;
- var current = sourceArray[i][j];
- sourceArray[i][j] = sourceArray[end_i][end_j];
- sourceArray[end_i][end_j] = current;
- }
- }
- // вьівод на єкран
- Console.WriteLine("Новый массив:\n" + String.Join("\n", sourceArray.Select(v => String.Join(" | ", v))));
- Console.ReadKey();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д