Путем перестановки элементов квадратной вещественной матрицы добиться того, чтобы ее максимальный элемент находился в левом верхнем углу - C#
Формулировка задачи:
Помогите, пожалуйста, с заданием на вставки, удаления, перестановки в массивах.
Путем перестановки элементов квадратной вещественной матрицы добиться того, чтобы ее максимальный элемент находился в левом верхнем углу, следующий по величине – в позиции (2,2), следующий по величине – в позиции (3,3) и т.д., заполнив таким образом всю главную диагональ.
Большое Спасибо за ответы :-)
Решение задачи: «Путем перестановки элементов квадратной вещественной матрицы добиться того, чтобы ее максимальный элемент находился в левом верхнем углу»
textual
Листинг программы
public static int[,] Replace(int [,] array)
{
int l;
if ((l = array.GetLength(0)) != array.GetLength(1))
throw new Exception();
for (int n = 0; n < l; n++)
{
int row = 0, col = 0;
int max = int.MinValue;
for (int i = 0; i < l; i++)
for (int j = 0; j < l; j++)
{
if (i != j || i > n)
if (array[i, j]>max)
{
max = array[i, j];
row = i; col = j;
}
}
int temp = array[n, n];
array[n, n] = array[row, col];
array[row, col] = temp;
}
return array;
}