Решение системы линейных уравнений n порядка - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Нужно составить

решение системы линейных уравнений n-го порядка

.

Решение задачи: «Решение системы линейных уравнений n порядка»

textual
Листинг программы
/*Метод Гаусса*/
double tmp, xx[column];
int k;
   /*прямой ход*/
  for( i = 0; i < row; i++)
       {
            tmp = matrix[i][i];
                 for( j = row; j >= i; j--)
                      matrix[i][j] /= tmp;
                           for( j = i + 1; j < row; j++)
            {
                 tmp = matrix[j][i];
                      for( k = row ; k >= i; k--)
                           matrix[j][k] -= tmp*matrix[i][k];
            }
        }
 /*обратный ход*/
xx[row - 1] = matrix[row - 1][row];
 for( i = row - 2; i >= 0; i--)
   {
       xx[i] = matrix[i][row];
         for( j = i + 1; j < row; j++)
           xx[i] -= matrix[i][j] * xx[j];
   }

Объяснение кода листинга программы

В этом коде решается система линейных уравнений методом Гаусса. Вот список действий:

  1. Создаются временная переменная tmp и массив xx для хранения результатов.
  2. Выполняется прямой ход метода Гаусса:
    • Для каждого i-го столбца (от 0 до row-1)
      • Создается временная переменная tmp, которая равна i-му элементу в i-м столбце матрицы.
      • Делается i-1 переходов по столбцам от i до 0, и на каждой строке (от i до 0) умножается i-й элемент на соответствующий элемент в i-м столбце и вычитается из соответствующих элементов в столбцах, начиная с i+1.
  3. Выполняется обратный ход метода Гаусса:
    • Создается массив xx размером row, где каждый элемент равен i-му элементу в i-м столбце матрицы.
    • Для каждого i-го столбца (от row-1 до 0)
      • Создается временная переменная tmp, которая равна i-му элементу в i-м столбце матрицы.
      • Делается i-1 переходов по столбцам от i до 0, и на каждой строке (от i до 0) умножается i-й элемент на соответствующий элемент в i-м столбце и вычитается из соответствующих элементов в столбцах, начиная с i+1.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5
Похожие ответы