Сортировка массива - C# (178157)
Формулировка задачи:
В общем, есть задача: Задан двумерный массив, в котором n x m элементов. Отсортируйте каждый столбец массива по возрастанию. Распечатайте массив дважды – до и после сортировки.
Вот мое решение:
Но оно не работает, помогите найти ошибку, пожалуйста
Листинг программы
- int min;
- Random rnd = new Random();
- int n = rnd.Next(4, 10);
- int m = rnd.Next(4, 10);
- int[,] ms = new int[n, m];
- for (int i =0; i<n; i++)
- for (int j = 0; j<m; j++)
- {
- ms[i, j] = rnd.Next(0,10);
- }
- Console.WriteLine("1st arr/");
- for (int i = 0; i < ms.GetLength(0); i++)
- {
- for (int j = 0; j < ms.GetLength(1); j++)
- {
- Console.Write(ms[i, j] + " ");
- }
- Console.WriteLine();
- }
- Console.WriteLine("2ns arr/");
- for (int i = 0; i < ms.GetLength(0); i++)
- {
- min = ms[i, 0];
- for (int j = 0; j < ms.GetLength(1)-1; j++)
- for (int z = 0; z < ms.GetLength(1)-j; z++)
- {
- if (ms[i, j] > ms[i, j + 1])
- {
- int x = ms[i, j];
- ms[i, j] = ms[i, j + 1];
- ms[i, j + 1] = x;
- }
- }
- }
- for (int i = 0; i < ms.GetLength(0); i++)
- {
- for (int j = 0; j < ms.GetLength(1); j++)
- {
- Console.Write(ms[i, j] + " ");
- }
- Console.WriteLine();
- }
- Console.ReadKey();
Решение задачи: «Сортировка массива»
textual
Листинг программы
- for (int j = 0; j < ms.GetLength(1); j++)
- {
- for (int i = 0; i < ms.GetLength(0) - 1; i++)
- for (int z = i+1; z < ms.GetLength(0); z++)
- {
- if (ms[i, j] > ms[z, j])
- {
- int x = ms[i, j];
- ms[i, j] = ms[z, j];
- ms[z, j] = x;
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д