Сложение и умножение матриц - Pascal ABC (18910)

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

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

Даны две целочисленные квадратные матрицы A и B размерности N x N . Получить матрицу C=AxB+BxA

Решение задачи: «Сложение и умножение матриц»

textual
Листинг программы
uses crt;
const
  n=4;
 
var
  a,b,c:array [-n..n,-n..n] of integer;
  i,j:integer;
 
begin
  writeln('ГЊГ*òðèöГ* A:');
  for i:=1 to n do begin
    writeln;
    for j:=1 to n do begin
      a[i,j]:=random(20);
      write('| ',a[i,j]);
    end;
  end;
 
  writeln;
   writeln;
 
  writeln('ГЊГ*òðèöГ* B:');
  for i:=1 to n do begin;
    writeln;
    for j:=1 to n do begin
      b[i,j]:=random(20);
      write('| ',b[i,j]);
    end;
  end;
  writeln;
  writeln;
  writeln('ГЌГ*æìè Enter');
  readln;
 
  writeln('ГЊГ*òðèöГ* A*B');
  for i:=-n to -1 do begin
    writeln;
    for j:=-n to -1 do begin
      a[i,j]:=a[-i,-j]*b[-i,-j];
      write('| ',a[i,j]);
    end;
  end;
 
  writeln;
  writeln;
 
  writeln('ГЊГ*òðèöГ* B*A');
  for i:=-n to -1 do begin
    writeln;
    for j:=-n to -1 do begin
      b[i,j]:=b[-i,-j]*a[-i,-j];
      write('| ',b[i,j]);
    end;
  end;
    for i:=-n to -1 do begin
    for j:=-n to -1 do begin
    c[i,j]:=a[i,j]+b[i,j];
      end;
       end;
    writeln;
     writeln;
     writeln('ГЊГ*Г±Г±ГЁГў A+B');
      for i:=-n to -1 do begin
        writeln;
        for j:=-n to -1 do begin
       write('| ',c[i,j]);
        end;
              end;
   readln;
end.

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

  1. Объявлены массивы a, b, c размером n x n для хранения результатов.
  2. В цикле выводятся элементы матрицы a.
  3. В цикле выводятся элементы матрицы b.
  4. Введенный пользователем символ Enter служит разделителем между матрицами a и b.
  5. Цикл выполняет умножение элементов матрицы a на элементы матрицы b и сохраняет результаты в матрицу c.
  6. Цикл выполняет умножение элементов матрицы b на элементы матрицы a и сохраняет результаты в матрицу c.
  7. Цикл выполняет сложение элементов матрицы a и матрицы b и сохраняет результаты в матрицу c.
  8. Выводятся элементы матрицы c.
  9. Введенный пользователем символ Enter служит разделителем между матрицами a+b и c.
  10. Программа завершается чтением символа от пользователя.

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

7   голосов , оценка 4 из 5
Похожие ответы