О САЙТЕ
Добро пожаловать!

Теперь вы можете поделиться своей работой!

Просто нажмите на значок
O2 Design Template

ФЭА / АИТ / Лабораторная работа №5 Вариант №4 Задание: 4x1+2x2+3x3=-2 2x1+8x2-1x3=8 9x1+1x2+9x3=0

(автор - student, добавлено - 25-01-2014, 17:13)

 

СКАЧАТЬ:  laba-5.zip [33,66 Kb] (cкачиваний: 25)

 

 

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

Вариант №4

 

Задание:

4x1+2x2+3x3=-2

2x1+8x2-1x3=8

9x1+1x2+9x3=0

Решить систему линейных алгебраических уравнений методом Гаусса.

            Исходный код:

program Gaussa5;

Uses CRT;

Label m1,m2,m3,m4,m5;

Const

         n=3;

Var

  a,p1:array[1..n,1..n] of real;

  b,p2:array[1..n] of real;

  x:array[1..n] of real;

  i,j,k:integer;

  s,c:real;

begin clrscr;

{Ввод коэффициентов перед х-ами}

  a[1,1]:=4;

  a[1,2]:=2;

  a[1,3]:=3;

  a[2,1]:=2;

  a[2,2]:=8;

  a[2,3]:=-1;

  a[3,1]:=9;

  a[3,2]:=1;

  a[3,3]:=9;

{Ввод коэффициентов в левой части равенства}

  b[1]:=-2;

  b[2]:=8;

  b[3]:=0;

 

{Для проверки}

For i:=1 to n do

 for j:=1 to n do p1[i,j]:=a[i,j];

For i:=1 to n do p2[i]:=b[i];

 

{Вывод введенного в программу массива коэффициентов}

For i:=1 to n do

 begin

  for j:=1 to n do Write (a[i,j]:1:1,' ');

  Writeln;

 end;

Writeln;

 

{Тело}

{Вычитаем последовательно строки}

    k:=1;

m1: i:=k+1;

m2: c:=a[i,k]/a[k,k];

    a[i,k]:=0;

    j:=k+1;

m3: a[i,j]:=a[i,j]-c*a[k,j];

    If j<n then

     begin

      j:=j+1;

      goto m3;

     end;

    b[i]:=b[i]-c*b[k];

    If i<n then

     begin

      i:=i+1;

      goto m2;

     end;

    If k<(n-1)

     then

      begin

       k:=k+1;

       goto m1;

      end;

 

{Находим последний корень}

    x[n]:=b[n]/a[n,n];

 

{Ищем остальные корни}

    i:=n-1;

m5: j:=i+1;

    s:=0;

m4: s:=s+a[i,j]*x[j];

    If j<n then

     begin

      j:=j+1;

      goto m4;

     end;

    x[i]:=(b[i]-s)/a[i,i];

    If i>1 then

     begin

      i:=i-1;

      goto m5;

     end;

 

{Вывод полученного массива корней}

For i:=1 to n do  WriteLN('x[',i,']=',x[i]:3:4,' ');

Writeln;

 

{Вывод полученных коэффициентов}

For i:=1 to n do

 begin

  for j:=1 to n do Write (a[i,j]:1:3,' ');

  Writeln;

 end;

 Writeln;

{Проверка}

 For i:=1 to n do

  begin

   s:=0;

   for j:=1 to n do

    begin

     s:=s+p1[i,j]*x[j];

     Write ('(',p1[i,j]:1:1,'*',x[j]:3:4,')');

     if j<>n then Write ('+');

    end;

   Write ('-(',p2[i]:3:4,') = ',(s-p2[i]):3:8);

   Writeln;

  end;

ReadLN;

end.

 

Результат работы программы:

 

Получили следующие корни:

x1=-9.5;

x2=4.5;

x3=9;

 


Ключевые слова -


ФНГ ФИМ ФЭА ФЭУ Яндекс.Метрика
Copyright 2021. Для правильного отображения сайта рекомендуем обновить Ваш браузер до последней версии!