Дана квадратная матрица А порядка n. Получить матрицу АВ - PascalABC.NET
Формулировка задачи:
Дана квадратная матрица А порядка n. Получить матрицу АВ; элементы матрицы В вычисляются по формуле
Решение задачи: «Дана квадратная матрица А порядка n. Получить матрицу АВ»
textual
Листинг программы
- const nmax=10;
- var a,b,c:array[1..nmax,1..nmax] of real;
- n,i,j,k:byte;
- begin
- randomize;
- repeat
- write('Размер матриц до ',nmax,' n=');
- readln(n);
- until n in [1..nmax];
- writeln('Матрица A:');
- for i:=1 to n do
- begin
- for j:=1 to n do
- begin
- a[i,j]:=5*random;
- write(a[i,j]:5:2);
- end;
- writeln;
- end;
- writeln('Матрица B:');
- for i:=1 to n do
- begin
- for j:=1 to n do
- begin
- b[i,j]:=1/(i+j-1);
- write(b[i,j]:5:2);
- end;
- writeln;
- end;
- for i:=1 to n do
- for j:=1 to n do
- begin
- c[i,j]:=0;
- for k:=1 to n do
- c[i,j]:=c[i,j]+a[i,k]*b[k,j];
- end;
- writeln('Матрица C=A*B:');
- for i:=1 to n do
- begin
- for j:=1 to n do
- write(c[i,j]:5:2);
- writeln;
- end;
- end.
Объяснение кода листинга программы
- Объявлены константы и переменные:
- nmax - максимальное значение размера матрицы (10);
- a, b, c - массивы (матрицы);
- n, i, j, k - индексы.
- Инициализация генератора случайных чисел.
- Ввод размера матрицы от пользователя.
- Вывод матрицы A:
- Внешний цикл - по строкам;
- Внутренний цикл - по столбцам;
- Заполнение ячейки матрицы A случайным числом;
- Вывод значения ячейки матрицы A с отступом в 5 символов и точностью до 2 знаков после запятой.
- Вывод матрицы B:
- Внешний цикл - по строкам;
- Внутренний цикл - по столбцам;
- Заполнение ячейки матрицы B по формуле 1/(i+j-1);
- Вывод значения ячейки матрицы B с отступом в 5 символов и точностью до 2 знаков после запятой.
- Заполнение матрицы C:
- Внешний цикл - по строкам матрицы C;
- Внутренний цикл - по столбцам матрицы C;
- Присваивание ячейке матрицы C значения 0;
- Внутренний цикл - по столбцам матрицы A;
- Умножение элементов матрицы A на соответствующие элементы матрицы B и добавление результата к ячейке матрицы C.
- Вывод матрицы C:
- Внешний цикл - по строкам;
- Внутренний цикл - по столбцам;
- Вывод значения ячейки матрицы C с отступом в 5 символов и точностью до 2 знаков после запятой.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д