Міністерство освіти і науки України
Лабораторна робота №
Розв’язування систем лінійних алгебраїчних рівнянь
Розв’язати систему лінійних алгебраїчних рівнянь:
Середовище MathCad
Середовище Turbo Pascal
Метод Зейделя
program Method_of_Zeidel;
uses crt;
const n=3; eps=0.001;
var a:array[1..n,1..n] of real;
b,x,z:array[1..n] of real; i,j,k,s:integer;
begin clrscr;
writeln('Введiть значення коефiцiєнтiв:');
for i:=1 to n do for j:=1 to n do
begin write('a[',i,',',j,']='); readln(a[i,j]); end;
for i:=1 to n do
begin write('b[',i,']='); readln(b[i]); end;
for i:=1 to n do z[i]:=0;
s:=0;
repeat
k:=0;
for i:=1 to n do
begin
x[i]:=-b[i];
for j:=1 to n do x[i]:=x[i]+a[i,j]*z[j];
if abs(x[i]/a[i,i])>eps then begin k:=1; s:=s+1; end;
x[i]:=z[i]-x[i]/a[i,i];
z[i]:=x[i];
end;
until k=0;
writeln('Коренi рiвняння:');
for i:=1 to n do writeln('x[',i,']=',x[i]:8:4);
writeln('Кiлькiсть iтерацiй = ',s:4);
readln;
end.
Введiть значення коефiцiєнтiв:
a[1,1]=0.1 a[1,2]=0.12 a[1,3]=-0.13
a[2,1]=0.12 a[2,2]=0.71 a[2,3]=0.15
a[3,1]=-0.13 a[3,2]=0.15 a[3,3]=0.63
b[1]=0.1 b[2]=0.26 b[3]=0.38
Коренi рiвняння
x[1]= 3.5654 x[2]= -0.5467 x[3]= 1.4691
Кiлькiсть iтерацiй 47
Метод Гауса
program Method_of_Gauss;
uses crt;
const n=3;
var i,j,k,m:integer;
a:array [1..n,1..n+1] of real;
x:array[1..n+1] of real;
c,s:real;
Begin
clrscr;
writeln('Введiть значення коефiцiєнтiв:');
for i:=1 to n do for j:=1 to n+1 do
begin write('a[',i,',',j,']='); readln(a[i,j]); end;
for k:=1 to n-1 do
begin
c:=a[k,k];
for m:=1 to n+1 do a[k,m]:=a[k,m]/c;
for i:=k+1 to n do
begin
c:=a[i,k];
for j:=1 to n+1 do
a[i,j]:=a[i,j]-c*a[k,j]/a[k,k];
end;
end;
c:=a[n,n];
for m:=1 to n+1 do a[n,m]:=a[n,m]/c;
writeln('Результати:');
writeln(' Трикутна матриця A:');
for i:=1 to n do
begin
for j:=1 to n+1 do write(' ',a[i,j]:4:2);
writeln;
end;
x[n]:=a[n,n+1];
i:=n-1;
for i:=n-1 downto 1 do
begin
s:=0;
for j:=i+1 to n do s:=s+a[i,j]*x[j];
x[i]:=(a[i,n+1]-s);
end;
writeln('Коренi рiвнянння:');
for i:=1 to n do writeln('x[',i,']=',x[i]:4:4);
readln;
end.
Введiть значення коефiцiєнтiв:
a[1,1]=0.1 a[1,2]=0.12 a[1,3]=-0.13 a[1,4]=0.1
a[2,1]=0.12 a[2,2]=0.71 a[2,3]=0.15 a[2,4]=0.26
a[3,1]=-0.13 a[3,2]=0.15 a[3,3]=0.63 a[3,4]=0.38
Результати:
Трикутна матриця A:
1.00 1.20 -1.30 1.00
0.00 1.00 0.54 0.25
0.00 0.00 1.00 1.47
Коренi рiвнянння:
x[1]=3.5667 x[2]=-0.5471 x[3]=1.4694
Блок-схема до методу Гауса
Блок-схема до методу Зейделя