Вот задание:
Даны векторы A[10], B[18]. У каждого вектора, компоненты которого не образуют неубывающей последовательности, отрицательные компоненты заменить максимальным элементом. 2 процедуры, теперь надо их вызвать, передав каждый массив и кол-во его элементов =)
Подскажите как сделать, не силен в массивах(
[code=auto]procedure GetMaxSwap (var M: Massiv; count: integer);
var
i: integer;
max: integer;
begin
max := M[1];
for i := 1 to count do
if M[i] > max then max := M[i];
for i := 1 to count do
if M[i] < 0 then M[i] := max;
end;
procedure CheckAndReplace(var M: Massiv; count: integer);
for i := 2 to count do
if M[i-1] > M[i] then begin // есть элемент, который меньше какого-то из предыдущих
GetMaxSwap(M, count); //отрицательные компоненты заменить максимальным элементом
break; // Выход, больше проверять нечего
end;[/code]