Путем перестановки элементов квадратной вещественной матрицы добиться задуманного ее состояния - C#
Формулировка задачи:
Добрый день помогите пожалуйста с задачей.
Путем перестановки элементов квадратной вещественной матрицы добиться того, чтобы ее максимальный элемент находился в правом верхнем углу, следующий по величине – в позиции (2,j-1) и т.д., заполнив таким образом всю побочную диагональ.
Решение задачи: «Путем перестановки элементов квадратной вещественной матрицы добиться задуманного ее состояния»
textual
Листинг программы
class Program { static void Main(string[] args) { int n = 5, c = 0; int[,] m = new int[n, n]; Random rand = new Random(); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { m[i, j] = rand.Next(0, 90) + 10; Console.Write(m[i, j] + " "); } Console.WriteLine("\n"); } for (int j = 0; j < n; j++) for (int i = n - 1; i > 0; i--) if (m[i, n - 1 - i] > m[i - 1, n - i]) { c = m[i, n - 1 - i]; m[i, n - 1 - i] = m[i - 1, n - i]; m[i - 1, n - i] = c; } for (int i = 0; i<n; i++) for (int j = 0; j<n; j++) if (m[i, j] > m[n - 1, 0]) { c = m[i, j]; m[i, j] = m[n - 1, 0]; m[n - 1, 0] = c; for (int k = 0; k < n; k++) for (int d = n - 1; d > 0; d--) if (m[d, n - 1 - d] > m[d - 1, n - d]) { c = m[d, n - 1 - d]; m[d, n - 1 - d] = m[d - 1, n - d]; m[d - 1, n - d] = c; } } Console.WriteLine("\n"); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) Console.Write(m[i, j] + " "); Console.WriteLine("\n"); } Console.ReadKey(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д