Дана матрица порядка n. Проверьте, является ли a(pq) самым большим элементом в своем столбце и самым маленьки - Turbo Pascal
Формулировка задачи:
дана матрица порядка n. Проверьте, является ли а[p,q] самым большим элементом в своем столбце и самым маленьким в своей строке
Ребят срочно нужно, помогите решить
Решение задачи: «Дана матрица порядка n. Проверьте, является ли a(pq) самым большим элементом в своем столбце и самым маленьки»
textual
Листинг программы
const n=5;yn:array[boolean]of string[3]=('не ',''); type mas=array[1..n,1..n] of integer; var a:mas; i,j,p,q:integer; function max(x:mas;pp,qq:integer):boolean; var i:integer; f:boolean; begin i:=1;f:=true; while i<=n do begin if a[pp,qq]<a[i,qq] then f:=false; inc(i) end; max:=f end; function min(x:mas;pp,qq:integer):boolean; var j:integer; f:boolean; begin j:=1;f:=true; while j<=n do begin if a[pp,qq]>a[pp,j] then f:=false; inc(j) end; min:=f end; begin writeln('матрица:'); for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=random(11); write(a[i,j]:4) end; writeln end; write('номер строки: ');readln(p); write('номер столбца: ');readln(q); writeln('элемент a[',p,',',q,'] = ',a[p,q]); writeln(yn[max(a,p,q)],'является максимальным в своем столбце'); writeln(yn[min(a,p,q)],'является минимальным в своей строке'); {writeln('результат: ',max(a,p,q) and min(a,p,q))} {если нужно выполнение обоих условий одновременно, раскомментируйте} end.
Объяснение кода листинга программы
- Переменная
n
инициализируется значением 5. - Создаются две константы
yn
, которые представляют собой массив строк длиной 3, где каждая строка содержит либо символне
, либо пустой символ. - Создается тип данных
mas
, который представляет собой массив целых чисел размером от 1 доn
на 1 доn
. - Создается переменная
a
типаmas
. - Создаются три переменные
i
,j
,p
иq
типаinteger
. - Определяются две функции
max
иmin
, которые принимают массивx
и индексыpp
иqq
в качестве параметров. Эти функции возвращают логическое значениеtrue
илиfalse
, указывающее, является ли элементa[pp,qq]
максимальным или минимальным в своем столбце или строке соответственно. - В основной части программы выводится матрица
a
с помощью циклаfor
. Для каждой строки выводится содержимое каждого столбца с помощью вложенного циклаfor
. - Затем программа запрашивает номер строки и столбца с помощью функции
readln
. - Выводится элемент
a[pq]
. - Выводятся результаты выполнения функций
max
иmin
с помощью функцииwriteln
. Если оба условия выполняются одновременно, то выводится значение(max(a,p,q) and min(a,p,q))
. - Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д