Дана целочисленная прямоугольная матрица - C# (185446)
Формулировка задачи:
Дана целочисленная прямоугольная матрица. Определить количество столбцов не содержащих ни одного нулевого элемента.
Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик.
Решение задачи: «Дана целочисленная прямоугольная матрица»
textual
Листинг программы
class Program { static void Main(string[] args) { var m = new int[,] { { 4,5,-6,4 }, { -7,0,9,2 }, { 1,2,3,2 } }; // Определить количество столбцов не содержащих ни одного нулевого элемента var nonZeroColumnsCount = Enumerable.Range(0, m.GetLength(1)) .Count(c => Enumerable.Range(0, m.GetLength(0)).All(r => m[r, c] != 0)); // Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик. var sorted = Enumerable.Range(0, m.GetLength(0)) .Select(r => Enumerable.Range(0, m.GetLength(1)).Select(c => m[r, c]).ToArray()) .OrderBy(r => r.Where(n => n > 0 && n % 2 == 0).Sum()).SelectMany(a=>a).ToArray(); var result = (int[,]) m.Clone(); Buffer.BlockCopy(sorted, 0, result, 0, sorted.Length * sizeof(int)); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д