Сформировать матрицу по правилу - Pascal (80846)
Формулировка задачи:
Помогите решить задачку.
Пускай дана матрица А размером n*m что состоит из действительных чисел.нужно получить матрицу
В размером n*m, каждый елемент b[i,j] который является истинной ,если сума соседних
елементов а[i,j], меньше установленного размера S.нужно использовать функцию нахождения
сумы соседних елементов.
Решение задачи: «Сформировать матрицу по правилу»
textual
Листинг программы
const n=5; m=5; type TArr = array [1..n,1..m] of Real; function Sum(const a: TArr; i, j: Integer): Real; var i1, i2, j1, j2: Integer; s: Real; begin i1:=i; i2:=i; j1:=j; j2:=j; s:=-a[i,j]; if i1>1 then Dec(i1); if i2<n then Inc(i2); if j1>1 then Dec(j1); if j2<m then Inc(j2); for i:=i1 to i2 do for j:=j1 to j2 do s:=s+a[i,j]; Sum:=s; end; var a: TArr; b: array [1..n,1..m] of Boolean; s: Real; i, j: Integer; begin Randomize; for i:=1 to n do for j:=1 to m do a[i,j]:=Random(100); WriteLn('A ='); for i:=1 to n do begin for j:=1 to m do Write(a[i,j]:6:0); WriteLn; end; Write('S: '); ReadLn(s); for i:=1 to n do for j:=1 to m do b[i,j]:=Sum(a,i,j)<s; WriteLn('B ='); for i:=1 to n do begin for j:=1 to m do Write(b[i,j]:6); WriteLn; end; end.
Объяснение кода листинга программы
- Объявляются константы
n
иm
и им присваиваются значения5
. - Определяется тип
TArr
- это двумерный массив размеромn
наm
элементов типа Real. - Создается функция
Sum
, которая принимает массивa
типаTArr
и два целочисленных значенияi
иj
, и возвращает значение типа Real.- Объявляются переменные
i1
,i2
,j1
,j2
иs
типа Real. - Переменным
i1
иi2
присваиваются значенияi
,j1
иj2
также присваиваются значенияj
, аs
устанавливается в значение-a[i,j]
. - Проверяется, чтобы значения переменных
i1
,i2
,j1
иj2
оставались в пределах размеров массиваa
. - Затем суммируются элементы массива
a
в заданных пределах и сохраняется в переменнойs
.
- Объявляются переменные
- Объявляются переменные
a
типаTArr
,b
- двумерный массив размеромn
наm
элементов типа Boolean,s
типа Real,i
иj
типа Integer. - Генерируются случайные значения и заполняется массив
a
случайными числами от 0 до 99. - Выводится массив
a
в консоль. - Запрашивается ввод значения переменной
s
с консоли. - Для каждого элемента массива
a
вычисляется значение функцииSum
и сравнивается с введенным значениемs
. Результат сравнения сохраняется в массивb
. - Выводится массив
b
в консоль.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д