Определить количество столбцов целочисленной прямоугольной матрицы, не содержащих ни одного нулевого элемента - C#
Формулировка задачи:
Дана целочисленная прямоугольная матрица. Определить количество столбцов не содержащих ни одного нулевого элемента.
Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик.
Решение задачи: «Определить количество столбцов целочисленной прямоугольной матрицы, не содержащих ни одного нулевого элемента»
textual
Листинг программы
static void Main(string[] args) { int n = 4; int m = 5; int[,] mass = new int[n, m]; int[] index = new int[n]; int[] numcol = new int[m]; int[] spe = new int[n]; int[,] mass1 = new int[n, m]; Random rnd = new Random(); for (int i = 0; i < n; i++) { index[i] = i; for (int j = 0; j < m; j++) { numcol[j] = 0; mass[i, j] = rnd.Next(-150,150); if (mass[i, j] == 0) numcol[j] += 1; } } Array.Copy(mass, 0, mass1, 0, mass.Length); Console.WriteLine("Заданная матрица"); print(mass); int numcolplus = 0; for (int j = 0; j < m; j++) if (numcol[j] == 0) numcolplus += 1; Console.WriteLine("количество столбцов не содержащих ни одного нулевого элемента: {0}", numcolplus); for (int i = 0; i < n; i++) { spe[i]=0; for (int j = 0; j < m; j++) if (mass[i, j] > 0 && mass[i, j] % 2 == 0) spe[i] += mass[i, j]; } // Сортировка по заданному свойству Array.Sort(spe, index); for (int j = 0; j < n; j++) for (int g = 0; g < n; g++) mass[j, g] = mass1[index[j], g]; Console.WriteLine("Отсортировано по заданному свойству"); print(mass); Console.ReadKey(); } public static void print(int[,] mass) { int n = mass.GetLength(0); int m = mass.GetLength(1); for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { Console.Write("\t{0} ", mass[i, j]); } Console.WriteLine(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д