Разность матриц

Задача: 

Найти разность двух матриц по модулю, т.е. из большего элемента одной матрицы вычесть меньший элемент второй матрицы, находящийся в той же позиции.

Алгоритм решения задачи: 

Решение задачи нахождения разности двух матриц аналогично нахождению суммы матриц.

Поскольку нужно из большего элемента вычесть меньший, то можно было бы воспользоваться оператором ветвления. Однако проще использовать встроенную в Pascal функцию abs(), которая возвращает модуль переданного ей параметра. При этом не важно из большего элемента вычитается меньший (например, 5 - 3) или из меньшего больший (3 - 5), результат будет один и тот же.

Программа на языке Паскаль: 

const N = 2; M = 5;
type arr = array[1..N,1..M] of integer;
var
	one,two,three: arr;
	i,j: byte;
 
procedure matrix(var a: arr);
	begin
		for i:=1 to N do
			for j:=1 to M do
				a[i,j] := random(100);
	end;
 
procedure minus(var a: arr; b: arr; c: arr);
	begin
		for i:=1 to N do
			for j:=1 to M do
				a[i,j] := abs(b[i,j]-c[i,j]);
	end;
 
procedure printer(a: arr);
	begin
		for i:=1 to N do begin
			for j:=1 to M do
				write(a[i,j]:4);
			writeln;
		end;
	end;
 
begin 
	randomize;
	matrix(one);
	printer(one);
	writeln;
	matrix(two);
	printer(two);
	writeln;
	minus(three,one,two);
	printer(three);
end.

Выполнение программы, вычисляющей разность матриц:

  11  96  55  17  54
   9  17  15   6  59

  99  79  23  97  43
   5  12  57  84  32

  88  17  32  80  11
   4   5  42  78  27