3852

Розв’язування системи лінійних алгебраїчних рівнянь методом Гауса

Лабораторная работа

Информатика, кибернетика и программирование

Розв’язування системи лінійних алгебраїчних рівнянь методом Гауса Мета роботи: навчитись розв’язувати систему лінійних алгебраїчних рівнянь методом Гауса. Короткі теоретичні відомості Нехай задана система п лінійних рівнянь...

Украинкский

2012-11-09

120 KB

16 чел.

Розв’язування системи лінійних алгебраїчних рівнянь методом Гауса

Мета роботи: навчитись розв’язувати систему лінійних алгебраїчних рівнянь методом Гауса.

Короткі теоретичні відомості

Нехай задана система п лінійних рівнянь із  п  невідомими, яка в матричному записі має вигляд

(1)     – шуканий вектор – розв’язок із відповідними компонентами.

Метод Гауса полягає в зведенні квадратної системи (1) до трикутного вигляду з використан-ням алгоритму послідовного виключення невідомих.

Алгоритм методу Гауса складається з двох етапів:

  1.  Триангуляція матриці

  1.  Обчислення розв’язку

Варіант 17

наступну СЛАР розв’язати методом Гауса

X1=-0,44

X2=2,47

X3=-0,86

X4=-2.07

Текст програми:

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

int k_z=4;

float A_mas[5][5]={{1.17,2,3,-2,6},{2,-0.17,-2,-3,6.64},{3,2,-1,1.83,0.68},{2,-3,2,1,-12.08}},

     A[5][5]={{1.17,2,3,-2,6},{2,-0.17,-2,-3,6.64},{3,2,-1,1.83,0.68},{2,-3,2,1,-12.08}},

     x_mas[4]={0};

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::FormCreate(TObject *Sender)

{

for (int i=0;i<=k_z;i++)

{

  for (int j=0;j<=k_z;j++)

  {

    StringGrid1->Cells[j][0]="X"+IntToStr(j+1);

    StringGrid1->Cells[i][j+1]=FloatToStrF(A[i][j],ffFixed,6,2);

  }

  StringGrid2->Cells[0][i]="X"+IntToStr(i+1);

  StringGrid3->Cells[0][i]=FloatToStrF(A[i][k_z],ffFixed,6,2);

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

 int k,i,j;

  for (i=0; i<k_z; i++)

   for (j=0; j<=k_z; j++)

      A_mas[i][j]=A[i][j];

 for(k=0; k<k_z-1; k++)

   for(i=k+1; i<k_z; i++)

     for(j=k_z; j>=k; j--)

       A_mas[i][j]=A_mas[i][j]*A_mas[k][k]-A_mas[k][j]*A_mas[i][k];

 for(i=k_z-1; i>=0; i--)

 {

   float sum=0;

   for(j=k_z-1; j>i; j--)

     sum += A_mas[i][j]*x_mas[j];

   x_mas[i]=(A_mas[i][k_z]-sum)/A_mas[i][i];

 }

  for (i=0;i<=k_z;i++)

 StringGrid2->Cells[1][i]=FloatToStrF(x_mas[i],ffFixed,6,2);

}

//---------------------------------------------------------------------------

Результат виконання програми:

Висновок: На цій лабораторній роботі я розв’язав систему лінійних алгебраїчних рівнянь методом Гауса, а також запрограмував його.


 

А также другие работы, которые могут Вас заинтересовать

51329. Шифрование текста по ключу аддитивными методами (гаммированием) 57.94 KB
  Цель работы: Научиться составлять программы шифрования текста, основываясь на методах замены. Вывод: научился составлять программы шифрования текста, основываясь на методах замены.
51330. Шифрование текста по ключу аддитивными методами (гаммированием) 86.14 KB
  Цель работы: Научиться составлять программы шифрования текста, основываясь на алгоритме RSA. Вывод: научился составлять программы шифрования текста, основываясь на алгоритме RSA.
51331. Создание паролей в Bios 841.5 KB
  Цель: научиться создавать пароли в Bios. Ход работы: Выбрал вкладку BIOS Seting Password
51334. Проектирование и строительство 4-х этажного здания с цокольным и мансардным этажами спортивно-оздоровительного и развлекательного назначения выполнены специалистами ООО «Севергеолдобыча» 366.5 KB
  Изученность территории ИНЖЕНЕРНО ГЕОДЕЗИЧЕСКИЕ ИЗЫСКАНИЯ. ИНЖЕНЕРНО ГЕОЛОГИЧЕСКИЕ ИЗЫСКАНИЯ. Техническое задание заказчика на производство инженерно строительных изысканий копия. Программа производства инженерногеологических изысканий.
51336. Изучение способов адресации микроконтроллеров МSP430 228.79 KB
  Производительность микроконтроллера во многом определяется его центральным процессорным устройством (ЦПУ). Микроконтроллеры MSP430 имеют 16-битное ЦПУ, обладающего рядом возможностей, специально предназначенных для поддержки современных методов программирования, таких как вычисляемые переходы, табличные вычисления, а также использование языков высокого уровня, в частности, языка Си.
51337. Изучение таймеров общего назначения и аналого-цифрового преобразователя микроконтроллера STM32F100RB 62.87 KB
  Некоторые характеристики модулей АЦП микроконтроллера STM32F100RB: 12ти разрядная разрешающая способность; 18 каналов из которых 16 внешние; возможность задавать время преобразования индивидуально для каждого канала 8 дискретных значений; возможность задания одиночного или непрерывного преобразования; самокалибровка; наличие оконного компаратора; запуск преобразования от внешнего источника; работа с модулем DM Injected chnnels инжектированные...