Смекни!
smekni.com

Лабораторные работы по вычислительной математике (стр. 2 из 3)

writeln;

for k := 1 to n do

begin

for i := 1 to n1 do

write(m[k,i] : 7:3,' ');

writeln

end; end;


{ процедура ввода значений элементов матрицы } procedure inputmat (var m : mattype; var n : byte); var k,i : byte; begin

writeln;

write ('Размер матрицы = ');

readln(n);

for k := 1 to n do

for i := 1 to n do

read (m[k,i]); end;


{ процедура транспонирования матрицы } procedure Transpose (var m : mattype;n : byte); var k,i : byte;

ttt : double; begin

for k := 1 to n do

for i := k+1 to n do

begin

ttt := m[k,i];

m[k,i] := m[i,k];

m[i,k] := ttt;

end; end;


{ процедура умножения двух матриц (a*b=c) } procedure MulMat (a : mattype; ma,na : byte;

b : mattype; mb,nb : byte;

var c : mattype; var mc,nc : byte); var k,i,j : byte;

s : double; begin

if na = nb then

begin

mc := ma;

nc := nb;

for k := 1 to mc do

for j := 1 to nc do

begin

s := 0;

for i := 1 to nc do

s := s+a[k,i]*b[i,j];

c[k,j] := s;

end;

end

else

begin

writeln('Неправильный размер матрицы !');

halt

end; end;


{ процедура получения двух треугольных матриц произведение которых равно матрице m } procedure GetRnT (var m,r,t : mattype; n : byte); var k,i,m1,l : byte; begin