Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Возведение матрицы в степень

Автор: Wizardius 16.04.2009 23:44

Дали задачку получить матрицу B из матрицы A размерностью m таким вот спосбом:

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

Очень надеюсь на вашу помощь, да и самому хочется разобраться...

Автор: volvo 16.04.2009 23:53

Ну, раз хочется разобраться - то добро пожаловать в FAQ, там есть процедура перемножения матриц, сложение матриц - поэлементно, это просто. И цикл, в котором собственно и находится Ai. Что из этого вызывает сложность?

Автор: Wizardius 17.04.2009 15:25

Сложность вызывает именно возведение в степень. Никак не пойму, как это проще реализовать.

Автор: volvo 17.04.2009 16:43

Не надо проще, реализуй как положено:

(* Возведение матрицы в степень *)
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 5.12.2021 9:42

Viagra Pharmacie Gratuit

Автор: is gabapentin considered a paink 10.12.2021 1:06

Viagra En Andorre