Найти произведение двух матриц - Pascal (80458)

Узнай цену своей работы

Формулировка задачи:

Ребят, помогите, нужна программа, которая находит произведение двух матриц

Решение задачи: «Найти произведение двух матриц»

textual
Листинг программы
  1. Program Umnoj2;
  2. Const Max=50;
  3. Var AA,BB,CC: array [1..Max,1..Max] of Double;
  4.  {то есть место для матриц выделяем с запасом}
  5.   ii,jj,kk,nn,mm,ll : integer; Summa: double;
  6. begin
  7.   writeln ('Программа умножает матрицу A на матрицу B');
  8.   write('Введите число строк 1-й матрицы - A (<=50)--> ');readln(NN);
  9.   write('Введите число столбцов 1-й матрицы - A (<=50)--> ');readln(KK);
  10.   write('Введите число столбцов 2-й матрицы - B (<=50)--> ');readln(MM);
  11.   writeln('Введите 1-ю матрицу (A):');
  12.   for ii:=1 to nn do
  13.   for jj:=1 to kk do
  14.     begin
  15.       write('Введите A[',ii,',',jj,'] --> ');
  16.       readln(AA[ii,jj]);
  17.     end;
  18.  
  19.   writeln('Введите 2-ю матрицу (B):');
  20.   for ii:=1 to kk do
  21.   for jj:=1 to mm do
  22.    begin write('Введите B[',ii,',',jj,'] --> '); readln(BB[ii,jj]);
  23.    end;
  24.  
  25.   {Вычисляем элементы матрицы-результата}
  26.  
  27.     for ii:=1 to nn do
  28.     for jj:=1 to mm do
  29.       begin
  30.         Summa:= 0;
  31.         for ll:= 1 to kk do
  32.           Summa:= Summa + AA[ii,ll]*BB[ll,jj];
  33.           CC[ii,jj] := Summa;
  34.       end;
  35. {Выводим матрицу-результат:}
  36.   writeln('---- Результат: -----');
  37.   for ii:=1 to nn do
  38.     begin
  39.       for jj:=1 to mm do
  40.         write(CC[ii,jj]:8:2);
  41.       writeln;
  42.     end;
  43. readln;
  44. end.

Объяснение кода листинга программы

  1. Объявляются константа Max со значением 50 и переменные AA, BB, CC массивами размера Max x Max для хранения матриц.
  2. Объявляются переменные ii, jj, kk, nn, mm, ll типа integer и переменная Summa типа double.
  3. Выводится сообщение Программа умножает матрицу A на матрицу B.
  4. Пользователю предлагается ввести количество строк и столбцов первой и второй матрицы.
  5. Пользователю предлагается ввести элементы первой матрицы A и второй матрицы B.
  6. Для каждого элемента матрицы-результата высчитывается сумма произведений соответствующих элементов матриц A и B.
  7. Выводится результат умножения матриц A на B.
  8. Программа завершается после нажатия клавиши Enter. Однако, данная программа написана на Pascal и является примером кода для умножения двух матриц.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы