Дан двумерный массив. Нужно заменить элементы, стоящие левее и ниже максимального элемента, на цифру 1.
Максимальный элемент нашла, но не знаю как в программе указать,какие элементы стоят левее и ниже максимального.
Допустим координаты максимального [x][y], тогда координаты элемента левее [x][y-1], а ниже [x + 1] [y]. При всём этом не забывай проверять возможность выхода за границы массива, то есть в твоём случае невозможно найти элемент левее максимального, если максимальный находится в 1й колонее, а также невозможно найти элемент ниже максимального, если максимальный находится в последней строке.
когда ты найдешь максимум, запомни не его значение, а "координаты" - номер строки и столбца (например, в переменные maxi и maxj)
а потом напиши цикл типа такого (массив [1..n,1..n]):
for i:=maxi+1 to n {строки ниже}
for j:=1 to maxj-1 do {столбцы левее}
ar[i,j]:=1;
или нужно заменить и те, которые левее (не важно - выше или ниже), и те, которые ниже (не важно - левее или правее)?
Нужно заменить все, которые выше или ниже. Например, в массиве 2 3 4
5 м 2
4 7 8
должно стать так: 1 3 4
1 м 2
1 1 1
(м-максим. элемент)
Значит, чуть по-другому:
for i := 1 to n do
for j := 1 to n do
if (i > max_i) or (j < max_j) then ar[i, j] := 1;
когда ты найдешь максимум, запомни не его значение, а "координаты" - номер строки и столбца (например, в переменные maxi и maxj)
А как запомнить координаты (номер строки и столбца) максимума?
http://forum.pascal.net.ru/index.php?showtopic=19955