Сортировка массива по убыванию - C#
Формулировка задачи:
Привет всем, не могу понять как сделать сортировку элементов каждой строки массива по убыванию
пишу следующее А он мне пишет Error 1 Operator '<' cannot be applied to operands of type 'double[]' and 'double' - КАК ЭТО ПОПРАВИТЬ, СПАСИБО.
public void sortmas() //Метод сортировки массива в порядке убывания int arr, const int size { double k = 0, j = DoubleArray.Length, C = 0; double [][] b; do { for (int i = 0; i < j - 1; i++) //i<j-1 { if (DoubleArray[i] < DoubleArray[i + 1]) { b[i] = DoubleArray[i]; DoubleArray[i] = DoubleArray[i + 1]; DoubleArray[i+1] = b[i]; k++; } C++; } j--; } while (k != 0 && j > 0); }
Решение задачи: «Сортировка массива по убыванию»
textual
Листинг программы
static void Main(string[] args) { try { Console.Write("Input M: "); var M = int.Parse(Console.ReadLine()); var N = 1; var testArray = new double[M][]; for (var i = 0; i < M; i++) { Console.Write("Input [{0}][N]: ", i); N = int.Parse(Console.ReadLine()); testArray[i] = new double[N]; } Console.WriteLine("Input elements:"); for (var i = 0; i < M; i++) { for (var j = 0; j < testArray[i].Length; j++) { Console.Write("[{0}][{1}] = ", i, j); testArray[i][j] = double.Parse(Console.ReadLine()); } } Console.WriteLine("Base array:"); for (var i = 0; i < M; i++) { for (var j = 0; j < testArray[i].Length; j++) Console.Write("{0} ", testArray[i][j]); Console.WriteLine(); } for (var i = 0; i < M; i++) { Array.Sort(testArray[i]); Array.Reverse(testArray[i]); } Console.WriteLine("Sorted array:"); for (var i = 0; i < M; i++) { for (var j = 0; j < testArray[i].Length; j++) Console.Write("{0} ", testArray[i][j]); Console.WriteLine(); } } catch (Exception ex) { Console.WriteLine(ex); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д