Вычисление массива по двум заданным массивам - Pascal
Формулировка задачи:
С помощью датчика случайных чисел заданы два двумерных массива размером 3 строки и 4 столбца . Создать третий массив такого же размера, каждый элемент которого вычисляется как сумма соответствующих элементом первых двух, если они равны между собой и как произведение, если элементы не равны. Все массивы вывести. Pascal
Решение задачи: «Вычисление массива по двум заданным массивам»
textual
Листинг программы
const m=3; n=4; W=5;
var
a, b, c: array [1..m,1..n] of Integer;
i, j: Integer;
begin
Randomize;
for i:=1 to m do for j:=1 to n do begin
a[i,j]:=Random(10); b[i,j]:=Random(10);
if a[i,j]=b[i,j] then c[i,j]:=a[i,j]+b[i,j] else c[i,j]:=a[i,j]*b[i,j];
end;
WriteLn('A =','':W*n-3,'B =','':W*n-3,'C =');
for i:=1 to m do begin
for j:=1 to n do Write(a[i,j]:W);
for j:=1 to n do Write(b[i,j]:W);
for j:=1 to n do Write(c[i,j]:W);
WriteLn;
end;
end.
Объяснение кода листинга программы
- Создаются три массива:
- Массив
aразмером m строк на n столбцов, содержащий целые числа, - Массив
bразмером m строк на n столбцов, содержащий целые числа, - Массив
cразмером m строк на n столбцов, содержащий целые числа.
- Массив
- Генерируются случайные значения для каждого элемента массивов
aиb. - Для каждого элемента массивов
aиbвычисляется значение элемента массиваc:- Если значение a[i,j] равно значению b[i,j], то c[i,j] присваивается сумма a[i,j] и b[i,j],
- В противном случае, c[i,j] присваивается произведение a[i,j] и b[i,j].
- Выводятся значения массивов
a,bиcв удобном формате, выравнивая их по ширине W*n-3, сначала выводятся значения массиваa, затем значения массиваbи, наконец, значения массиваc.