Упорядочить столбцы матрицы так, чтобы их последние элементы образовывали убывающую последовательность - C#
Формулировка задачи:
Ребят помогите! Задание такое:Дана матрица размера M х N. Упорядочить ее столбцы так, чтобы их последние элементы образовывали убывающую последовательность.
При таких данных:1,2,3,4,5,6,7,8,9 и матрицей размера [3][3] Код не работает, не могу понять почему
Console.Write("Введите число строк матрицы N="); int N = int.Parse(Console.ReadLine()); Console.Write("Введите число столбцов матрицы M="); int M = int.Parse(Console.ReadLine()); int[,] mass = new int[N, M]; for (int i = 0; i < N; i++) for (int j = 0; j < M; j++) { Console.Write("Введите элемент массива [{0}] [{1}]:", i, j); mass[i, j] = int.Parse(Console.ReadLine()); } for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) { Console.Write("{0} ", mass[i, j]); } Console.WriteLine(" "); } int temp = 0; for (int i = 0; i < N; i++) { if (mass[N-1, 0] < mass[i, 0]) { temp = mass[N-1, 0]; mass[N-1, 0] = mass[i, 0]; mass[i, 0] = temp; } } for (int j = 1; j < M; j++) { for (int i = 0; i < N-1; i++) { if (mass[N-1,j]<mass[i,j] && mass[N-1,j-1]> mass[i,j]) { temp= mass[N-1,j]; mass[N-1,j] = mass[i,j]; mass[i,j] = temp; } } } Console.WriteLine("Результат:"); for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) { Console.Write("{0} ", mass[i, j]); } Console.WriteLine(" "); } bool flag = false; for (int i = 0; i < N; i++) { if (flag == true) break; for (int j = 1; j < M; j++) { if (mass[N - 1, j - 1] < mass[N - 1, j]) { Console.WriteLine("Упорядочить не удалось!"); flag = true; } } } Console.ReadKey();
Решение задачи: «Упорядочить столбцы матрицы так, чтобы их последние элементы образовывали убывающую последовательность»
textual
Листинг программы
int temp = 0; for (int i = 0; i < M-1; i++) { for (int j = i; j < M; j++) { if (mass[N - 1, i] < mass[N - 1, j]) { for (int k = 0; k < N; k++) { temp = mass[k, j]; mass[k, j] = mass[k, i]; mass[k, i] = temp; } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д