Дана квадратная матрица А порядка n. Получить матрицу АВ - PascalABC.NET

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

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

Дана квадратная матрица А порядка n. Получить матрицу АВ; элементы матрицы В вычисляются по формуле

Решение задачи: «Дана квадратная матрица А порядка n. Получить матрицу АВ»

textual
Листинг программы
  1. const nmax=10;
  2. var a,b,c:array[1..nmax,1..nmax] of real;
  3.     n,i,j,k:byte;
  4. begin
  5. randomize;
  6. repeat
  7. write('Размер матриц до ',nmax,' n=');
  8. readln(n);
  9. until n in [1..nmax];
  10. writeln('Матрица A:');
  11. for i:=1 to n do
  12.  begin
  13.   for j:=1 to n do
  14.    begin
  15.     a[i,j]:=5*random;
  16.     write(a[i,j]:5:2);
  17.    end;
  18.   writeln;
  19.  end;
  20. writeln('Матрица B:');
  21. for i:=1 to n do
  22.  begin
  23.   for j:=1 to n do
  24.    begin
  25.     b[i,j]:=1/(i+j-1);
  26.     write(b[i,j]:5:2);
  27.    end;
  28.   writeln;
  29.  end;
  30. for i:=1 to n do
  31. for j:=1 to n do
  32.  begin
  33.   c[i,j]:=0;
  34.   for k:=1 to n do
  35.   c[i,j]:=c[i,j]+a[i,k]*b[k,j];
  36.  end;
  37. writeln('Матрица C=A*B:');
  38. for i:=1 to n do
  39.  begin
  40.   for j:=1 to n do
  41.   write(c[i,j]:5:2);
  42.   writeln;
  43.  end;
  44. end.

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

  1. Объявлены константы и переменные:
    • nmax - максимальное значение размера матрицы (10);
    • a, b, c - массивы (матрицы);
    • n, i, j, k - индексы.
  2. Инициализация генератора случайных чисел.
  3. Ввод размера матрицы от пользователя.
  4. Вывод матрицы A:
    • Внешний цикл - по строкам;
    • Внутренний цикл - по столбцам;
    • Заполнение ячейки матрицы A случайным числом;
    • Вывод значения ячейки матрицы A с отступом в 5 символов и точностью до 2 знаков после запятой.
  5. Вывод матрицы B:
    • Внешний цикл - по строкам;
    • Внутренний цикл - по столбцам;
    • Заполнение ячейки матрицы B по формуле 1/(i+j-1);
    • Вывод значения ячейки матрицы B с отступом в 5 символов и точностью до 2 знаков после запятой.
  6. Заполнение матрицы C:
    • Внешний цикл - по строкам матрицы C;
    • Внутренний цикл - по столбцам матрицы C;
    • Присваивание ячейке матрицы C значения 0;
    • Внутренний цикл - по столбцам матрицы A;
    • Умножение элементов матрицы A на соответствующие элементы матрицы B и добавление результата к ячейке матрицы C.
  7. Вывод матрицы C:
    • Внешний цикл - по строкам;
    • Внутренний цикл - по столбцам;
    • Вывод значения ячейки матрицы C с отступом в 5 символов и точностью до 2 знаков после запятой.

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


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

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

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

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

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

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