Показать сообщение отдельно
  #2  
Старый 25.02.2013, 00:28
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,107
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

А ты чего хотел? Ты же результат не сохраняешь для середины итерации.
Код:
function MultiMatrix(A, B: TMas; d: integer): TMas;
var
  i, j, k, sum: integer;  
  newA: TMas;
begin
  if d <> 1 then
    begin
      for i := 1 to n do
        for j := 1 to n do
          begin
            sum := 0;
            for k := 1 to n do
              sum := sum + A[i,k]*B[k,j];
            newA[i,j] := sum;
          end;
      dec(d);
      MultiMatrix(A, newA, d)  // <- Здесь! Где сохранение результата???
    end
  else
    MultiMatrix := B;
end;
Ответить с цитированием