Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
3 / 3 / 1
Регистрация: 23.09.2019
Сообщений: 107

Составить подрограмму вычислений k-ой степени матрицы из (n x n) элементов, используя подпрограмму умножения двух матриц

10.11.2019, 20:14. Показов 2422. Ответов 8

Студворк — интернет-сервис помощи студентам
Составить подпрограмму вычислений k-ой степени квадратной матрицы из (n x n) элементов, используя подпрограмму умножения двух матриц. Найти k-ю степень матриц A(3x3) и B(4x4), k задаётся пользователем.

Матрицы выглядят так:

https://www.cyberforum.ru/cgi-bin/latex.cgi?<br />
A=\begin{pmatrix}1 & 2 & 3\\\\ 4 & 5 & 6\\\\ 7 & 8 & 9\end{pmatrix},\ \ \ B=\begin{pmatrix}0.1 & 0.2 & 0.3 & 0.4\\\\ 0.5 & 0.6 & 0.7 & 0.8\\\\ 0.9 & 1.0 & 1.1 & 1.2\\\\ 1.3 & 1.4 & 1.5 & 1.6\end{pmatrix}<br />
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.11.2019, 20:14
Ответы с готовыми решениями:

Составить подпрограмму умножения двух матриц произвольной размерности
составить подпрограмму умножения двух матриц произвольной размерности. Используя ее ,вычислить к-ю степень квадратной матрицы....

Составить подпрограмму умножения одномерных матриц и подпрограмму их сравнения
Составить подпрограмму умножения одномерных матриц и подпрограмму их сравнения.(подпрограммы составить таким образом, чтобы ввод-вывод...

Составить подпрограмму умножения одномерных матриц и подпрограмму их сравнения
Составить подпрограмму умножения одномерных матриц и подпрограмму их сравнения. Буду очень благодарен. Если не затруднит, напишите...

8
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
10.11.2019, 20:22
Для примера
Квадратная матрица. Вычислить A^n, по алгоритму
1
3 / 3 / 1
Регистрация: 23.09.2019
Сообщений: 107
12.11.2019, 17:22  [ТС]
Puporev, Совершенно разные условия, но в обоих присутствует процедура умножения матриц. Из-за чего немного путаюсь по коду.
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
12.11.2019, 17:31
Цитата Сообщение от fYm13 Посмотреть сообщение
Совершенно разные условия,
В чем разные?
И там и там возведение квадратной матрицы в степень умножением матриц. Лень делать, ума нет, так и скажите.
0
3 / 3 / 1
Регистрация: 23.09.2019
Сообщений: 107
12.11.2019, 18:10  [ТС]
Цитата Сообщение от Puporev Посмотреть сообщение
В чем разные?
И там и там возведение квадратной матрицы в степень умножением матриц. Лень делать, ума нет, так и скажите.
И на том спасибо.
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
12.11.2019, 18:56
Лучший ответ Сообщение было отмечено fYm13 как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
uses crt;
const na=3;
      nb=4;
type matr=array[1..nb,1..nb] of real;
{умножение матрицы на матрицу}
procedure Umn(a1,a2:matr;p:integer;var a3:matr);
var k,j,i:byte;
begin
for k:=1 to p  do
for j:=1 to p do
 begin
  a3[k,j]:=0;
  for i:=1 to p do
  a3[k,j]:=a3[k,j]+a1[k,i]*a2[i,j];
 end;
end;
{вывод на экран}
procedure Vyvod(a:matr;p:integer;st:string);
var i,j:byte;
begin
writeln(st);
for i:=1 to p do
 begin
  for j:=1 to p do
  write(a[i,j]:9:1);
  writeln;
 end;
end;
procedure stepen(a:matr;p,k:integer;st,s:string);
var a1,a2:matr;
    i,j:integer;
begin
for i:=1 to p do
for j:=1 to p do
a[i,j]:=-2+5*random;
vyvod(a,p,'Исходная матрица '+st);
a1:=a;
for i:=1 to k-1 do{k-1 раз}
 begin
  Umn(a1,a,p,a2);{умножаем A*A}
  a1:=a2;{запомним результат}
 end;
Vyvod(a2,p,'Матрица '+st+'^'+s+':');
end;
var a,b:matr;
    k:byte;
    s:string;
begin
clrscr;
randomize;
repeat
write('Введите натуральное число от 2 до 7 - степень матриц k=');
readln(k);
until k in[2..7];
str(k,s);
stepen(a,na,k,'A',s);
stepen(b,nb,k,'B',s);
readln
end.
1
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7816 / 4635 / 2837
Регистрация: 22.11.2013
Сообщений: 13,158
Записей в блоге: 1
12.11.2019, 20:26
Количество матричных умножений достаточно легко сократить:
https://www.cyberforum.ru/post9754286.html
1
3 / 3 / 1
Регистрация: 23.09.2019
Сообщений: 107
17.11.2019, 22:09  [ТС]
Puporev, Такой вопрос: если две матрицы имеют разные типы данных (инт и рил), тогда нужно делать отдельно процедуру для целых и отдельно для дробных? Или же можно запихать все в одну процедуру?
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
18.11.2019, 04:57
Цитата Сообщение от fYm13 Посмотреть сообщение
если две матрицы имеют разные типы данных (инт и рил),
А зачем? Объявите обе как real, пусть в одной будут целые числа, в другой вещественные и что?
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.11.2019, 04:57
Помогаю со студенческими работами здесь

Составить подпрограмму умножения одномерных матриц и подпрограмму их сравнения
Заранее спасибо)

Составить подпрограмму определения суммы элементов одномерного массива. Используя ее, вычислить сумму элементов матрицы
Помогите, пожалуйста написать программу в TP. Составить подпрограмму определения суммы элементов одномерного массива. Используя ее,...

использую процедуру умножения матриц, найти степени квадратной матрицы A^2,A^3.....A^(n-1),A^n.
Используя процедуру умножения матриц, найти степени квадратной матрицы A^2,A^3.....A^(n-1),A^n. Помогите пожалуйста.

Составить программу для нахождения сумм элементов каждой строки матрицы, используя подпрограмму-функцию
2. даны действительные матрицы А(15,10) и В(9,7). Составить программу для нахождения сумм элементов каждой строки, используя...

Составить подпрограмму вычисления К степени квадратной матрицы
Составить подпрограмму вычисления k-й степени квадратной матрицы из п*п элементов, используя подпрограмму умножения двух матриц. Найти А3,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru