Сортировка матрицы - C#
Формулировка задачи:
Дана матрица 5 на 10. Пресортировать ее , заменив местами минимальный и максимальный елемент в каждой строчке и столбце. C#
Решение задачи: «Сортировка матрицы»
textual
Листинг программы
class Program { //Вызов метода создания новой матрицы[5,10] public static void CreateArray(int[,]myArray) { int[,] myArray_A = myArray; myArray_A = new int[5, 10]; Random rnd = new Random(); /* ---Заполнение массива рандомными числами (-10,10)--- ---вывод его на консоль--- */ for (int i = 0; i < 5; i++) //Проходим по циклу строк { Console.Write("\n"); for (int j = 0; j < 10; j++) //Проходим по циклу столбцов { myArray_A[i, j] = rnd.Next(-10, 10); //Заполняем текущий элемент Console.Write("{0}\t", myArray_A[i, j]); } } //Вызов метода нахождения и смены местами Макс.Значения и Мин.Значения //В строках и столбцах. FindMaxMinValue(myArray_A); //Выводим конечный результат на консольку ShowArray(myArray_A); } //Вызов метода нахождения и смены местами Макс.Значения и Мин.Значения public static void FindMaxMinValue(int[,] myArray) { //Находим максимальные и минимальные значения в строке и столбце int minVal = myArray[0, 0]; int maxVal = myArray[0, 0]; for (int i = 0; i < 5; i++)//Проходим по циклу строк for (int j = 0; j < 9; j++) //Проходим по циклу столбцов { if (minVal > myArray[i, j + 1]) { minVal = myArray[i, j + 1]; } if (maxVal < myArray[i, j + 1]) { maxVal = myArray[i, j + 1]; } } SwapMaxMinValArray(myArray, maxVal, minVal); } //меняем местами в строках минимальные и максимальные значения. public static void SwapMaxMinValArray(int[,] myArray, int maxVal, int minVal) { for(int i = 0; i < 5; i++) { for(int j = 0; j < 10; j++) { if(myArray[i, j] == maxVal) {myArray[i, j] = minVal;continue; } if(myArray[i, j] == minVal) {myArray[i, j] = maxVal; } } } } //Вывод матрицы на консоль public static void ShowArray(int[,] myArray) { Console.WriteLine("\n------------------------------------------------------------------------------"); for (int i = 0; i < 5; i++) { Console.Write("\n"); for (int j = 0; j < 10; j++) { Console.Write("{0}\t", myArray[i, j]); } } } public static void Main(string[] args) { int[,] myArray = new int[5, 10]; //Вызов метода создания новой матрицы[5,10] //И заполнения её рандомными числами в диапазоне от (-10 до +10). CreateArray(myArray); Console.ReadKey(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д