Преобразование матрицы к треугольному виду - C#
Формулировка задачи:
Добрый вечер! Помогите пожалуйста, вопрос собственно в следующем. Нужно прямоугольную матрицу преобразовать в треугольную. Т.е. массив двумерный. А рпоблема то у меня с алгоритмом как раз. Т.е. я математически на листочке делаю, а какой то определенный алгоритм, я не могу придумать. Подскажите пожалуйста алгоритм решения задачи
Решение задачи: «Преобразование матрицы к треугольному виду»
textual
Листинг программы
static void ToTriangle(double[,] matrix)
{
int n = matrix.GetLength(0);
if (n != matrix.GetLength(1))
throw new ArgumentException("Square matrix expected", "matrix");
for (int i = 0; i < n - 1; i++)
{
for(int j = i + 1; j < n; j++)
{
double koef = matrix[j, i] / matrix[i, i];
for (int k = i; k < n; k++)
matrix[j, k] -= matrix[i, k] * koef;
}
}
}