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);

}

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

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

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


 

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

20498. Таблиці та дерева рішень 38.5 KB
  Метод дерева рішень це один з методів автоматичного аналізу величезних масивів даних. Область використання методу дерева рішень можна об'єднати в три класи: опис даних: застосування дерева рішень дозволяє зберігати інформацію про вибірку даних в компактній і зручній для обробки формі що містить в собі точні описи об'єктів; класифікація: застосування дерева рішень дозволяє справитися із завданнями класифікації тобто відношення об'єктів до одного з описаних класів; регресія: якщо змінна має недостовірні значення то застосування дерева...
20499. Теорія реляційних баз даних. Основні терміни і означення. Нормалізація відношень 31 KB
  Реляційна база даних база даних основана на реляційній моделі даних. Інакше кажучи реляційна база даних це база даних яка сприймається користувачем як набір нормалізованих відношень різного ступеню. Метою нормалізації є усунення недоліків структури БД які призводять до шкідливої надмірності в даних яка в свою чергу потенційно призводить до різних аномалій і порушень цілісності даних.
20500. Трикутні матриці (верхня та нижня) і їх розклад на добуток двох трикутних 37 KB
  Трику́тна ма́триця матриця в якій всі елементи нижче або вище за головну діагональ рівні нулю. Верхньотрикутна матриця квадратна матриця в якій всі елементи нижче за головну діагональ дорівнюють нулю. Нижньотрикутна матриця квадратна матриця в якій всі елементи вище за головну діагональ дорівнюють нулю. Унітрикутна матриця верхня або нижня трикутна матриця в якій всі елементи на головній діагоналі дорівнюють одиниці.
20501. Форми, типи форм, обчислення в формах 33 KB
  Робота з формами може відбуватися в трьох режимах: у режимі Форми в режимі Таблиці в режимі констриктор. типи форм В Access можна створити форми наступних видів: форма в стовпець або повноекранна форма; стрічкова форма; таблична форма; форма головна підпорядкована; зведена таблиця; формадіаграма. Форма в стовпець є сукупністю певним чином розташованих полів введення з відповідними їм мітками і елементами управління.
20502. Маніпулювання даними, операції над схемою бази даних за допомогою мови SQL 27.5 KB
  Маніпулювання даними операції над схемою бази даних за допомогою мови SQL Для маніпулювання данними виділяють такі групи команд SQL:Команди мови визначення даних DDL Data Definition Language. DDL Data Definition Language мова визначення даних це підмножина SQL що використовується для визначення та модифікації різних структур даних.До даної групи відносяться команди призначені для створення зміни та видалення різних об'єктів бази даних. Команди CREATE створення ALTER модифікація і DROP видалення мають...
20503. Матриця суміжності та матриця інцидентності 28 KB
  Матриця суміжності графа G зі скінченною кількістю вершин n пронумерованих числами від 1 до n це квадратна матриця A розміру n в якій значення елементу aij рівне числу ребер з iї вершини графа в jу вершину. Матриця суміжності простого графа що не містить петель і кратних ребер є бінарною матрицею і містить нулі на головній діагоналі. Матриця суміжності неорієнтованого графа симетрична а значить володіє дійсними власними значеннями і ортогональним базисом з власних векторів.
20504. Метод ітерації (метод послідовних наближень) 88 KB
   Суть методу полягає у заміні початкового рівняння 4.18 еквівалентним йому рівнянням 4.19 Постановка задачі Нехай задано рівняння де неперервна нелінійна функція. Потрібно визначити корінь цього рівняння який знаходиться на відрізку з заданою похибкою .
20505. Метод послідовних наближень (метод ітерацій) для розв’язку системи лінійних рівнянь 91 KB
  11 пошуку розвязку системи с заданою похибкою відповідно теоремі про збіжність.11 виконується то ітераційний процес пошуку розвязку системи с заданою похибкою збігається і метод послідовних наближень можна використовувати.13 що легко розвязується для знаходження вектора розвязку першого наближення тому що в правої частині містить всі визначені елементи.
20506. Мова запитів SQL. Огляд її можливостей 27 KB
  Він по суті містив тільки пропозиція SELECT яке дозволяло формулювати запити для вибірки даних з бази. Потім мова була доповнено двома іншими компонентами необхідними для роботи з базами даних. Перший з них компонент для визначення структури бази даних які в термінології теорії баз даних називаються мовою визначення даних МВД. Другий засоби що дозволяють заповнювати базу даних змінювати їх і видаляти.