Процедуры и функции:Матрицы. PascalABC

_d_D_
Сообщения: 18
Зарегистрирован: 13 дек 2008, 14:33

dr.Jekill, Неужели по другому никак не решается? :confused:
dr.Jekill
Сообщения: 526
Зарегистрирован: 03 янв 2009, 23:17
Откуда: Voronezh
Контактная информация:

Насколько я понял:
берешь первый массив, находишь там мин элемент и записываешь строку в которой находится этот элемент в результирующий массив, потом берешь второй массив и делаешь то же самое. Потом снова берешь первый массив и записываешь столбец в котором находится минимальный элемент этого массива в результрующий массив. То же самое делаешь со вторым массивом.
!НО
равных минимальных элементов может быть несколько в массиве!
Нет религии выше истины
_d_D_
Сообщения: 18
Зарегистрирован: 13 дек 2008, 14:33

Эт я понял.Меня интересует как определить строку и столбец содерж.минимальный элемент..
dr.Jekill
Сообщения: 526
Зарегистрирован: 03 янв 2009, 23:17
Откуда: Voronezh
Контактная информация:

У тебя же процедура Minimum находит положение мин элемента в матрицы. Следует записывать в результирующий массив i-тую строку и j-тый столбец каждой матрицы.
Нет религии выше истины
_d_D_
Сообщения: 18
Зарегистрирован: 13 дек 2008, 14:33

Чёт я туплю нереально.Мне нужно сделать ещё одну процедуру,верно?
и там будет что-то вроде этого?

Код: Выделить всё

begin
for i:=1 to N do
for j:=1 to N do
Z[i]:=Matr[i,j];
end;
dr.Jekill
Сообщения: 526
Зарегистрирован: 03 янв 2009, 23:17
Откуда: Voronezh
Контактная информация:

если iMin номер строки мин элемента, тогда при записи:

Код: Выделить всё

begin
for i:=1 to N do
for j:=1 to N do
Z[i]:=Matr[iMin,j];
{а при записи столбца Z[i]:=Matr[i,jMin];}
end;
Кстати в процедуре Minimum, если ты первоначально запоминаешь позицию первого элемента, то лучше перебирать со второго элемента.
Нет религии выше истины
_d_D_
Сообщения: 18
Зарегистрирован: 13 дек 2008, 14:33

Так это 2 разные процедуры писать?или в одну можно?
И ещё список формальных параметров будет выглядеть следующим образом:

Код: Выделить всё

Procedure FormZ (const Matr:tmatr;N,M:byte;var iMin,jMin:byte);
или нет?
dr.Jekill
Сообщения: 526
Зарегистрирован: 03 янв 2009, 23:17
Откуда: Voronezh
Контактная информация:

Можно во входные параметры добавить флаг.
Нет религии выше истины
_d_D_
Сообщения: 18
Зарегистрирован: 13 дек 2008, 14:33

Можно во входные параметры добавить флаг.
Что за флаг?
dr.Jekill
Сообщения: 526
Зарегистрирован: 03 янв 2009, 23:17
Откуда: Voronezh
Контактная информация:

Кстати если матрица не квадратная, то результрующий массив надо перебирать (и записывать в него) до последнего элемента записываемой строки или столбца.
Нет религии выше истины
Ответить