среда, 8 декабря 2010 г.

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

Тема: Умножение матриц
Цель:
Разработать алгоритм и программу решения прикладной задачи – умножение мартиц.
Задание: Умножить матрицу А с размерностью m × n на матрицу В с размерностью n × l .


Для двух матриц -
матрицы А с размерностью m × n и матрицы В с размерностью n × l


Математическая модель:



Алгоритм: Блок-схема


Программа:


Код программы:


const m = 2;
const n = 3;
const l = 4;

var a:array[0..m-1,0..n-1] of integer = ((1,2,3),(3,4,4));
b:array[0..n-1,0..l-1] of integer = ((1,2,3,4),(3,4,5,6),(1,2,3,4));
c:array[0..m-1,0..l-1] of integer;
s,i,j,k:integer;

begin

for i:=0 to m-1 do
begin
for j:=0 to n-1 do
StringGrid1.Cells[j+1,i+1]:=InttoStr(a[i][j]);
end;


for i:=0 to n-1 do
begin
for j:=0 to l-1 do
StringGrid2.Cells[j+1,i+1]:=InttoStr(b[i][j]);
end;

for i:=0 to m-1 do
begin
for j:=0 to l-1 do
begin
s:=0;
for k:=0 to n-1 do
begin
s:=s+a[i][k]*b[k][j];
end;
c[i][j]:=s;
StringGrid3.Cells[j+1,i+1]:=InttoStr(c[i][j]);
end;
end;

end;

Комментариев нет:

Отправить комментарий