Все привет, сегодня увидел вопрос студента на форуме, о том как выполнить его задание. Суть задания состояла в том что бы все элементы с наибольшим значением в данной целочисленной квадратной матрице порядка 10 заменить нулями. Написать решения нужно было на C#, к моему удивлению решения не было в интрнете, но было на C++ и паскале. Кончено задание не сложное, однако ему просто никто не помог. Для таких отчаивавшихся студентов, я выкладываю код на C#.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
public static void Matrix() { int size = 10; int[,] matrix = new int[10, 10]; int max = 5; Random r = new Random(); for (int i = 0; i < size; i++) for (int j = 0; j < size; j++) { matrix[i, j] = r.Next(0, 6); // заполнение матрицы числами от 0 до 5. рандомно if (max < matrix[i, j]) max = matrix[i, j]; } //Выводим всю матрицу for (int i = 0; i < size; i++) { Console.WriteLine(""); for (int j = 0; j < size; j++) Console.Write(" " + matrix[i, j]); } Console.WriteLine(""); Console.WriteLine(new string('-', 32)); //заменяем 0 максимальные for (int i = 0; i < size; i++) for (int j = 0; j < size; j++) if (matrix[i, j] == max) matrix[i, j] = 0; //выводим новую матрицу for (int i = 0; i < size; i++) { Console.WriteLine(""); for (int j = 0; j < size; j++) Console.Write(" " + matrix[i, j]); } } |