Сторінка
4
read(A[i,j]); {Ввід першої матриці}
write('Введіть матрицю М');
For i:=1 to n do
For j:=1 to m do
read(B[i,j]); {Ввід другої матриці}
For i:=1 to n do
For j:=1 to m do
C[i,j]:=A[i,j]-B[i,j]; {Знаходження їх різниці}
For i:=1 to n do
For j:=1 to m do
writeln(C[i,j]); {Вивід результату}
End.
Результати:
n=2,m=3
1 -4 5 6 -1 0 -5 -3 5
0 3 8 6 0 -9 -6 3 17
if k<>i then
For j:=n1 downto 1 do
a[k,j]:=a[k,j]-a[i,j]*a[k,i];end;
For i:=1 to n do
For j:=1 to n do
m[i,j]:=a[i,j+n];
For i:=1 to n do
For j:=1 to n do
writeln(m[i,j]:6:2); {Вивід оберненої матриці}
End.
2 4 3 -0,2 0 0,2
М= 0 -1 -5 М-1 = 0,41 0,18 -0,112
7 4 3 -0,08 -0,24 0,02
Program Dobutok; {Множення числа на матрицю}
Const dim1=20;
dim2=40;{dim2=2*dim1}
Type ar1=array[1 dim1,1 dim2] of real;
ar2=array[1 dim1,1 dim2] of real;
Var i,j,n,m:integer;
A:ar1; C:ar2;
r:real;
Begin
write('Введіть число');
readln(r); {Ввід числа}
write('Введіть розмірність матриці М');
readln(n,m); {Ввід розмірності матриці}
write('Введіть матрицю М');
For i:=1 to n do
For j:=1 to m do
read(A[i,j]); {Ввід матриці}
For i:=1 to n do
For j:=1 to m do
C[i,j]:=A[i,j]*r; {Множення матриці на число}
For i:=1 to n do
For j:=1 to m do
writeln(C[i,j]); {Вивід результату}
End.
Резуьтати:
r=5 n=3,m=2
-1 2 -5 10
M= 3 5 C= 15 25
4 -2.5 20 -12.5
Program obernena; {Знаходження оберненої матриці}
Const dim1=20;
dim2=40;{dim2=2*dim1}
Type ar=array[1 dim1,1 dim1] of real;
ar1=array[1 dim1,1 dim2] of real;
Var i,j,k,n1:integer; n:integer;Var m:ar;e:real;
t,s:real;
a:ar1;
Begin
readln(e); {Ввід точності обчислень}
write('Введіть розмірність матриці М');
readln(n); {Ввфд розмірності квадратної матриці}
write('Введіть матрицю М');
For i:=1 to n do
For j:=1 to n do
read(m[i,j]); {Ввід матриці}
n1:=2*n;
For i:=1 to n do
For j:=1 to n1 do
if j<=n then a[i,j]:=m[i,j]
else if j=n+i then a[i,j]:=1
else a[i,j]:=0;
For i:=1 to n do
begin k:=i;s:=a[i,i];
for j:=i+1 to n do
begin t:=a[j,i];
if abs(s)<abs(t) then begin s:=t;k:=j;end;end;
if abs(s)<e then begin {Знаходження визначника}
write('M-вироджена');Halt end;
For j:=i to n1 do
begin t:=a[k,j];a[k,j]:=a[i,j];a[i,j]:=t/s;end; {Знаходження елементів оберненої }
For k:=1 to n do {матриці}
рrgram dob_mas;
Const dim1=30;
dim2=40;
dim3=30;
Type ar1=array[1 dim2,1 dim1] of real;
ar2=array[1 dim3,1 dim2] of real;
ar3=array[1 dim1,1 dim3] of real;
Var i,j,k,l,n,m:integer;
A:ar1;
B:ar2;
C:ar3;
Begin
write('Введіть розмірність матриці М');
readln(n,m,l);
write('Введіть матрицю А');
For i:=1 to n do
For j:=1 to m do
read(A[i,j]);
write('Введіть матрицю В');
For i:=1 to l do
For j:=1 to n do
read(B[i,j]);
For i:=1 to m do
For j:=1 to l do
For k:=1 to n do
C[i,j]:=C[i,j]+A[k,i]*B[j,k];
For i:=1 to m do
For j:=1 to l do
writeln(C[i,j]);
End.
Результати:
n=2,m=2,l=2,
1 2 3 4
3 4 1 2
рrogram dilennya; {Ділення двох матриць}
Const dim1=20;
dim2=40;{dim2=2*dim1}
Type ar1=array[1 dim1,1 dim1] of real;
ar2=array[1 dim1,1 dim1] of real;
ar3=array[1 dim1,1 dim2] of real;
ar4=array[1 dim1,1 dim2] of real;
Var i,j,k,n1:integer; n:integer; M:ar3;e:real;
t,s:real;
A:ar1;B:ar2;c:ar4;
Begin
readln(e); {Знаходження оберненої матриці }
write('Введіть розмірність матриці М');
readln(n);
write('Введіть матрицю M');
For i:=1 to n do
For j:=1 to n do
read(M[i,j]);
write('Введіть матрицю B');