Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
29957.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.54 Mб
Скачать

3.4 Анықтауыштарды және кері матрицаны есептеу

жүйенің анықтауышын арқылы белгілейік:

Теңдеулер жүйесін шешудің Гаусс әдісімен анықтауышты есептеу алгоритмін қарастырайық.

Бірінші теңдеудің сол және оң жақ бөліктерін жүргізуші элементіне бөлсек, түрлендірілген жүйенің анықтауышы -ге тең. Бірінші қадамның келесі түрлендірулері (жүйенің басқа теңдеулерінен белгісізін жою) анықтауыштың шамасын өзгертпейді. Екінші қадамда, екінші теңдеудің (түрлендірілген) екі бөлігін екінші жүргізуші элементке (оны арқылы белгілейік) бөлсек, алынған жүйенің анықтауышы -ге тең. Жүйенің теңдеуінен белгісізін жоюдағы амалдар анықтауышы шамасын өзгертпейді.

Амалдарды жалғастыра отырып, -ші қадамда

жүйесіне келеміз. Осы жүйенің анықтауышы -ге тең. Жүйе белгісіздері коэффициенттерінің матрицасы – бас диагоналы бірге тең болатын үшбұрышты матрица. Сондықтан оның анықтауышы 1-ге тең:

.

Сонымен, бастапқы матрицаның анықтауышы:

,

мұндағы - жүргізуші элементтер.

Бұдан мынадай қорытынды жасауға болады: егер квадратты матрицаның анықтауышын есептеу қажет болса, онда осы матрицадан теңдеулер жүйесін шешу керек.

матрицасы үшін кері матрицасының элементтерін есептеуге болады. Анықтама бойынша, , мұндағы - бірлік матрица. Ізделінді кері матрицасы мен бірлік матрицаны векторлық-бағандар жиынтығы түрінде көрсетейік:

Осы жазу арқылы

Әр жүйені шешімі кері матрицаның сәйкесінше бағанын береді.

Мысал. матрицасы үшін кері матрицаны табу керек. Есептеу кестеде көрсетілген.

Табылған элементтердің мәндерін жаза отырып (жолдарды кері ретті орналастыру), ізделінді кері матрицаны аламыз:

Тура тексеруді жасайық:

Сызықтық теңдеулер жүйесін Гауус әдісімен шешу алгоритмі төмендегі суретте көрсетілген. массиві жүйенің кеңейтілген матрицаның коэффициенттерін қамтиды. Программа жүйенің анықтауышын есептеуді қамтиды (айнымалы ).

Мысал.

Программаның нәтижесі:

Гаусс әдісімен теңдеулер жүйесін шешу (2-тәсіл)

program gauss;

uses crt;

var a:array[1..10,1..10] of real;

b:array[1..10] of real;

c:array[1..10,1..10] of real;

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

i1,j1,k,i,j,n:integer;

s,cl:real;

Label 1,2,3,4,5,6,7,8;

BEGIN

writeln('Bbedite schislo uravnenii n');

readln(n);

writeln('Bbedite po stroscno koeffisentob pri neizbesnih');

for i:=1 to n do

begin

for j:=1 to n do

begin

writeln('a[',i,j,']');

read(a[i,j]);

end;

end;

writeln('Bbedite po elementof sbabodni scleni sistem');

for i:=1 to n do

begin

writeln('[',i,']');

read(b[i]);

end;

{********** primoi hot pescenie zadasc******}

k:=1;

1: i:=k+1;

if a[k,k]<>0 then goto 3;

2:i1:=k+1;

if a[i1,k]=0 then goto 2;j1:=i1;

For j:=1 to n do

begin

c[k,j]:=a[k,j];

a[k,j]:=a[j1,j];

a[j1,j]:=c[k,j];

end;

3: cl:=a[i,k]/a[k,k];

a[i,k]:=0;

j:=k+1;

4: a[i,j]:=a[i,j]-cl*a[k,j];

if j<n then

begin

j:=j+1; goto 4;

end;

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

if i<n then

begin

i:=i+1; goto 3;

end;

if k<n-1 then

begin

k:=k+1; goto 1;

end;

{********** Obratni hot rescenia***********}

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

i:=n-1;

5:j:=i+1; s:=0;

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

if j<n then

begin

j:=j+1;goto 6;

end;

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

if i>1 then

begin

i:=i-1;goto 5;

end;

writeln(' rescenia sistem ');

for i:=1 to n do

writeln('x[',i,']=',x[i]:7:4);

readln;

readln;

end.

Тапсырма 5. Гаусс әдісін пайдаланып, 0,001 дәлдігімен жүйені шеш. Программа құрастыр: . Есептің берілгендерін 4-тапсырмадан алыңыз

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]