//Конструктор СЛАУ по расширенной матрице (добавлено для Задания 5) //Расширенная матрица и матрица коэффициентов сразу же приводятся к треугольному виду; получаем их ранги public SLAE(NumericMatrix extended_matrix_of_SLAE) { extended_matrix = extended_matrix_of_SLAE; n_equasions = extended_matrix_of_SLAE.Height(); n_x = extended_matrix_of_SLAE.Width() - 1; matrix = new NumericMatrix(n_equasions, n_x); matrix = extended_matrix.GetArea(0, 0, n_x - 1, n_equasions - 1); extended_rank = NumericMatrix.GetRank(extended_matrix); rank = NumericMatrix.GetRank(matrix); single_solution = new List <double>(); general_solution = new NumericMatrix(n_x, n_x + 1); }
//Инициализация СЛАУ с клавиатуры //Расширенная матрица и матрица коэффициентов сразу же приводятся к треугольному виду; получаем их ранги public void ConsoleInput() { Console.WriteLine("Введите количество неизвестных:"); n_x = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Введите количество уравнений:"); n_equasions = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Заполните расширенную матрицу:"); extended_matrix = new NumericMatrix(n_equasions, n_x + 1); extended_matrix.ConsoleInput(); Console.WriteLine(extended_matrix.ToString()); matrix = new NumericMatrix(n_equasions, n_x); matrix = extended_matrix.GetArea(0, 0, n_x - 1, n_equasions - 1); extended_rank = NumericMatrix.GetRank(extended_matrix); rank = NumericMatrix.GetRank(matrix); single_solution = new List <double>(); general_solution = new NumericMatrix(n_x, n_x + 1); }