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

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

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

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

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

textual
Листинг программы
Program Umnoj2;
Const Max=50;
Var AA,BB,CC: array [1..Max,1..Max] of Double;
 {то есть место для матриц выделяем с запасом}
  ii,jj,kk,nn,mm,ll : integer; Summa: double;
begin
  writeln ('Программа умножает матрицу A на матрицу B');
  write('Введите число строк 1-й матрицы - A (<=50)--> ');readln(NN);
  write('Введите число столбцов 1-й матрицы - A (<=50)--> ');readln(KK);
  write('Введите число столбцов 2-й матрицы - B (<=50)--> ');readln(MM);
  writeln('Введите 1-ю матрицу (A):');
  for ii:=1 to nn do
  for jj:=1 to kk do
    begin
      write('Введите A[',ii,',',jj,'] --> ');
      readln(AA[ii,jj]);
    end;
 
  writeln('Введите 2-ю матрицу (B):');
  for ii:=1 to kk do
  for jj:=1 to mm do
   begin write('Введите B[',ii,',',jj,'] --> '); readln(BB[ii,jj]);
   end;
 
  {Вычисляем элементы матрицы-результата}
 
    for ii:=1 to nn do
    for jj:=1 to mm do
      begin
        Summa:= 0;
        for ll:= 1 to kk do
          Summa:= Summa + AA[ii,ll]*BB[ll,jj];
          CC[ii,jj] := Summa;
      end;
{Выводим матрицу-результат:}
  writeln('---- Результат: -----');
  for ii:=1 to nn do
    begin
      for jj:=1 to mm do
        write(CC[ii,jj]:8:2);
      writeln;
    end;
readln;
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
Похожие ответы