Выполнить действия над матрицами - Pascal (80693)
Формулировка задачи:
Выполнить действия над матрицами:
Решение задачи: «Выполнить действия над матрицами»
textual
Листинг программы
const
a: array[1..2, 1..3] of integer =
((2, 1, 5), (0, 1, -3));
b: array[1..3, 1..2] of integer =
((2, 3), (1, 0), (5, 8));
c: array[1..2, 1..2] of integer =
((2, 1), (-1, 0));
var
x: array[1..3, 1..3] of integer;
i, j: byte;
begin
for i := 1 to 2 do
for j := 1 to 3 do
x[i, j] := a[i, j] * b[j, i];
for i := 1 to 2 do
for j := 1 to 2 do
c[i, j] := - 7 * c[i, j];
for i := 1 to 2 do
for j := 1 to 2 do
x[i, j] := x[i, j] - c[j, i];
writeln('Ответ:');
for i := 1 to 3 do
begin
for j := 1 to 3 do
write(x[i, j]:5);
writeln;
end;
readln
end.
Объяснение кода листинга программы
- Объявляется константа
a- двумерный массив 2x3, его значения это ((2, 1, 5), (0, 1, -3)). - Объявляется константа
b- двумерный массив 3x2, его значения это ((2, 3), (1, 0), (5, 8)). - Объявляется константа
c- двумерный массив 2x2, его значения это ((2, 1), (-1, 0)). - Объявляется переменная
x- двумерный массив 3x3, его значения не определены. - Объявляются переменные
iиj- целочисленные переменные с использованием байтов. - В цикле сначала для
iот 1 до 2, потом дляjот 1 до 3 вычисляются значения дляxпо формуле:x[i, j] := a[i, j] * b[j, i]. - В цикле сначала для
iот 1 до 2, потом дляjот 1 до 2 вычисляются значения дляc:c[i, j] := - 7 * c[i, j]. - В цикле сначала для
iот 1 до 2, потом дляjот 1 до 2 значения дляxпересчитываются по формуле:x[i, j] := x[i, j] - c[j, i]. - Выводится сообщение
Ответ:. - Вложенный цикл используется для вывода значений из массива
xв виде матрицы. - Происходит чтение пользовательского ввода.