Вывести матрицу в консоль, отсортировать по возрастанию побочную диагональ. - C#
Формулировка задачи:
Дано матрицу размера M×M, которая заполнена целыми числами в промежутке (-10, 10). необходимо: Вывести матрицу в консоль, отсортировать по возрастанию побочную диагональ матрицы и так же вывести её в консоль. C#
Решение задачи: «Вывести матрицу в консоль, отсортировать по возрастанию побочную диагональ.»
textual
Листинг программы
static void Main(string[] args) { int m = 5; int[,] matr = new int[m, m]; Init( matr); Print(matr); Sort(matr); Console.WriteLine(); Print(matr); Console.ReadKey(); } static public void Init(int[,] matr) { Random rnd = new Random(); for (int i = 0; i < matr.GetLength(1); i++) for (int j = 0; j < matr.GetLength(0); j++) matr[i, j] = rnd.Next(-10,10); } static public void Sort(int[,] arr) { int value; int w = arr.GetLength(0); for (int j = 0; j < arr.GetLength(1) && j < w; j++) { //int h = arr.GetLength(1) - j; value = arr[j, w - 1 - j]; for (int i = j; i < w; i++) if (arr[j, w - 1 - j] > arr[i, w - i - 1]) { int val = arr[j, w - 1 - j]; arr[j, w - 1 - j] = arr[i, w - i - 1]; arr[i, w - i - 1] = val; } } } static public void Print(int[,] arr) { for (int i = 0; i < arr.GetLength(1); i++) { for (int j = 0; j < arr.GetLength(0); j++) Console.Write(string.Format("{0,3} ", arr[i, j])); Console.WriteLine(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д