Автор: _Hanter_ 3.11.2011 19:18
Нехай задана квадратна матриця порядка m та натуральне число n. Треба знайти Аn. Використати алгоритм: якщо n=2k, то Аn= (А2)k. Якщо n=2k+1, то Аn= (А2)kА. Для k далі застосовують той же алгоритм.
Автор: Rian 3.11.2011 21:54
я не очень понимаю А- это матрица? нужно найти матрицу умноженную на число? а кчему формулы и "к"
это алгоритм чего?
ЗЫ ты хотябы не просто скопипасть задание, хоть немного перефразируй как ты понимаешь
Автор: _Hanter_ 4.11.2011 16:55
Да! Это матрица в степени n. Но еще нужно использовать алгоритм …
Автор: Rian 4.11.2011 23:41
Цитата(_Hanter_ @ 4.11.2011 11:55)
Да! Это матрица в степени n. Но еще нужно использовать алгоритм …
где написано что матрицу нужно возводить в степень? зачем?
и например n=2k... и т.д. что это? что такое k?
нафига оно надо то? к чему алгоритм применять?...
Автор: IUnknown 5.11.2011 0:12
Цитата
где написано что матрицу нужно возводить в степень? зачем?
Цитата
нафига оно надо то? к чему алгоритм применять?...
Перевожу:
Если n=2k (в смысле,
четное), то A
n = A
2k. Если же n = 2k + 1 (нечетное), то A
n = A
2k*A ... Далее, для k использовать тот же алгоритм.
Это просто рекурсивный алгоритм возведения в степень. Единственное, чего не хватает, чтобы реализовать его на Паскале - это граничных условий для рекурсии: что делать, когда n = 0, и когда n = 1 (в этом случае уже не воспользуешься вышеописанными правилами, потому что тогда рекурсия будет вечной, я бы предложил поведение, аналогичное возведению в степень обычных чисел: в случае n = 0 A
0 = E /единичной матрице, аналог 1-цы при умножении чисел/, а A
1 = A /исходной матрице/, что логично...)
Остается только реализовать процедуру перемножения матриц, основанную на ней же процедуру возведения матрицы в квадрат, и, собственно, работающую по описанному алгоритму процедуру возведения матрицы в степень n... Все просто...