Матрицы. Нахождение максимального элемента в строках массива - C#
Формулировка задачи:
Дана матрица P(N,N). Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали. Вывести на печать исходную и результирующую матрицы.
(N<=15).
Помогите, пожалуйста, с кодом.
Решение задачи: «Матрицы. Нахождение максимального элемента в строках массива»
textual
Листинг программы
Console.Write("Введите длину строки матрицы: "); int N; if (!int.TryParse(Console.ReadLine(), out N) || N < 0 || N > 15) //ограничения по размерности матрицы { Console.Write("Введено не корректное значение./nНажмите любую клавишу для завершения работы."); Console.ReadKey(); return; } int i, j; double[][] Matrix = new double[N][]; Console.Write("Всего значений " + (N * N) + " введите их\n"); //ввод значений for (i = 0; i < N; i++) //колонки { Matrix[i] = new double[N]; //указываю размерность массива в строке for (j = 0; j < N; j++) //строки { if (!double.TryParse(Console.ReadLine(), out Matrix[i][j])) { Console.Write("Введено не корректное значение./nНажмите любую клавишу для завершения работы."); Console.ReadKey(); return; } } } //Ведем поиск максимумов int MaxIndex; double Temp; for (i = 0; i < N; i++) //колонки { for (j = 0; j < N; j++) //попутно вывожу что было Console.Write(Matrix[i][j] + " "); Console.Write("\n"); MaxIndex = 0; for (j = 1; j < N; j++) //строки if (Matrix[i][j] > Matrix[i][MaxIndex]) MaxIndex = j; //записываю индекс максимального значения Temp = Matrix[i][i]; Matrix[i][i] = Matrix[i][MaxIndex]; //перемещаю максимальное значение строки на позицию диагонали Matrix[i][MaxIndex] = Temp; } Console.Write("Результат\n"); for (i = 0; i < N; i++) //вывожу результат { for (j = 0; j < N; j++) Console.Write(Matrix[i][j] + " "); Console.Write("\n"); } Console.ReadKey();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д