ВУЗ:
Составители:
Рубрика:
Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
Matrix res(rang, 1 + n - rang);
for(int i = 0; i < rang; i++)
{
res[i][0] = B[0][i];
for(int j = rang; j < n; j++)
res[i][j – rang + 1] = -A[i][j];
}
x = res;
isSolved = true;
}
Выбор метода для решения СЛАУ осуществляется в функции
Solve(). Если матрица коэффициентов системы является квадратной, то
пользователю предлагается задать метод решения системы: метод
Крамера или с помощью обратной матрицы. Если определитель
квадратной матрицы окажется нулевым, СЛАУ будет решаться методом
исключений Жордана-Гаусса. Для решения СЛАУ с прямоугольной
матрицей коэффициентов применим только метод Жордана-Гаусса.
// функция выбора метода решения
// системы линейных уравнений
void Slau::Solve()
{
if(m == n)
try
{
// матрица коэффициентов квадратная –
// предоставлется выбор метода решения
// пользователю
cout << "Метод Крамера - 1,
С помощью обратной матрицы - 2"
<< endl;
int i;
cin >> i;
if(i == 1)
Kramer();
else
InverseMatrix();
}
catch(ZeroDevideException e)
{
// генерация исключения происходит при
// равенстве нулю определителя матрицы
// коэффициентов осуществляется получение
// общего решения системы
JordanGauss();
}
210
Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М. Matrix res(rang, 1 + n - rang); for(int i = 0; i < rang; i++) { res[i][0] = B[0][i]; for(int j = rang; j < n; j++) res[i][j – rang + 1] = -A[i][j]; } x = res; isSolved = true; } Выбор метода для решения СЛАУ осуществляется в функции Solve(). Если матрица коэффициентов системы является квадратной, то пользователю предлагается задать метод решения системы: метод Крамера или с помощью обратной матрицы. Если определитель квадратной матрицы окажется нулевым, СЛАУ будет решаться методом исключений Жордана-Гаусса. Для решения СЛАУ с прямоугольной матрицей коэффициентов применим только метод Жордана-Гаусса. // функция выбора метода решения // системы линейных уравнений void Slau::Solve() { if(m == n) try { // матрица коэффициентов квадратная – // предоставлется выбор метода решения // пользователю cout << "Метод Крамера - 1, С помощью обратной матрицы - 2" << endl; int i; cin >> i; if(i == 1) Kramer(); else InverseMatrix(); } catch(ZeroDevideException e) { // генерация исключения происходит при // равенстве нулю определителя матрицы // коэффициентов осуществляется получение // общего решения системы JordanGauss(); } 210
Страницы
- « первая
- ‹ предыдущая
- …
- 208
- 209
- 210
- 211
- 212
- …
- следующая ›
- последняя »