Показать сообщение отдельно
  #1  
Старый 18.08.2009, 21:21
Alyonka89 Alyonka89 вне форума
Прохожий
 
Регистрация: 17.08.2009
Сообщения: 3
Репутация: 10
По умолчанию Умножение матриц

Здравствуйте!
Написала маленькую программу перемножения 2 матриц, но результат перемножения неверный=(
Помогите, пожалуйста, найти где у меня ошибка и подскажите пожалуйста как ее исправить

Код:
procedure TForm1.Button1Click(Sender: TObject);
type matrica=array[1..15,1..15] of real;
var a, b, c: matrica;
    i, j, m, n, l, k: byte;
    s: real;
begin
  n:=4;
  m:=4;
  l:=4;
  for i := 1 to n do
    for j := 1 to m do a[i,j]:=strtoint(stringgrid1.cells[i,j]);
  for i := 1 to n do
    for j := 1 to m do b[i,j]:=strtoint(stringgrid2.cells[i,j]);
  for I := 1 to n do
    for j := 1 to l do
      begin
        s:=0;
        for k := 1 to m do
          s:=s+a[i,k]*b[k,j];
        c[i,j]:=s;
      end;
  for I := 1 to n do
    for j := 1 to m do
      stringgrid3.cells[i,j]:=floattostrf(c[i,j],fffixed,4,1);
end;
Ответить с цитированием