Найти в матрице минимальное число К , для которого хотя бы в одной строке все элементы меньше или равны К - Turbo Pascal
Формулировка задачи:
Помогите, пожалуйста, с задачей!
Найти в матрице минимальное число К , для которого хотя бы в одной строке все элементы меньше или равны К.
Решение задачи: «Найти в матрице минимальное число К , для которого хотя бы в одной строке все элементы меньше или равны К»
textual
Листинг программы
var { тут описание матрицы } i, j, max, k : integer; begin { тут ввод матрицы } k := maxint; { или просто какое-то очень большое число } for i := 1 to n do { n - число строк матрицы } begin max := a[i, 1]; for j := 2 to m do { m - число столбцов } if a[i, j] > max then max := a[i, j]; if max < k then k := max end; writeln('k = ', k); end.
Объяснение кода листинга программы
В данном коде на Turbo Pascal происходит следующее:
- Создается переменная
max
типаinteger
, которая будет использоваться для хранения текущего максимального значения в матрице. Изначально значениеmax
устанавливается на максимальное возможное значение для типаinteger
. - Задается переменная
k
также типаinteger
. В началеk
устанавливается на максимальное возможное значение для типаinteger
. - Далее происходит цикл
for
, который выполняется от 1 доn
, гдеn
- количество строк в матрице. Внутри цикла значение переменнойmax
обновляется: если текущий элемент в текущей строке (a[i, 1]
), то есть первый элемент в текущей строке, больше значенияmax
, тоmax
обновляется на значение текущего элемента. - После завершения внутреннего цикла, значение переменной
max
сравнивается с текущим значениемk
. Еслиmax
меньшеk
, то значениеk
обновляется на значениеmax
. - По завершении внешнего цикла, значение переменной
k
выводится на экран с помощью функцииwriteln
. Таким образом, результатом работы программы будет вывод на экран минимального значенияk
, для которого хотя бы в одной строке все элементы меньше или равны этому значению.