Помощь - Поиск - Пользователи - Календарь
Полная версия: Возведение матрицы в степень
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Wizardius
Дали задачку получить матрицу B из матрицы A размерностью m таким вот спосбом:

B=A^1 + A^2 + A^3 + ... + A^n

Очень надеюсь на вашу помощь, да и самому хочется разобраться...
volvo
Ну, раз хочется разобраться - то добро пожаловать в FAQ, там есть процедура перемножения матриц, сложение матриц - поэлементно, это просто. И цикл, в котором собственно и находится Ai. Что из этого вызывает сложность?
Wizardius
Сложность вызывает именно возведение в степень. Никак не пойму, как это проще реализовать.
volvo
Не надо проще, реализуй как положено:

(* Возведение матрицы в степень *)
procedure matrixPower(var m: TMatrix; a: TMatrix; pow: integer);
var
  i, j: Integer;
  T: TMatrix;
begin
  if pow = 0 then begin
    for i := 1 to size do
      for j := 1 to size do m[i, j] := Byte(i = j);
      exit
  end;

  move(a, T, sizeof(T));
  for i := 1 To Pred(pow) do matrixMult(T, T, a);
  move(T, m, sizeof(T))
end;
Где искать процедуру перемножения матриц, я сказал выше...
where to buy zithromax online ch
Viagra Pharmacie Gratuit
is gabapentin considered a paink
Viagra En Andorre
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.