Вопрос, который вызвал трудности

Заполните массив случайными числами в [0,1000] и вычислите разность максимального
среди элементов, имеющих чётные значения, и максимального среди элементов, имею-
щих нечётные значения, в заданном целочисленном массиве из 30 положительных эле-
ментов (в предположении, что в массиве есть и чётные, и нечётные элементы)

Ответ экспертов Учись.Ru

Чтобы дать полноценный ответ, был привлечён специалист, который хорошо разбирается в теме.

После обсуждения с другими специалистами сервиса мы пришли к выводу, что правильный ответ на ваш вопрос будет звучать следующим образом:

Var
A:array[1..30] of integer;
i,Mc,Mn:integer;

Begin
For i := 1 to 30 do
    Begin
    A[i]:=random(1001);
    if A[i] mod 2 = 0 then Mc:=A[i]
    else Mn:=A[i];
    Write(A[i],' ');
    End;
WriteLn;

For i:= 1 to 30 do
    if (Mc    else if (Mn 0) then Mn:=A[i];

WriteLn(Mc,' - ',Mn,' = ',Mc-Mn);
End.


// PascalABC.NET 3.2, сборка 1389 от 01.03.2017
//Внимание! Если программа не работает, обновите версию!
begin
writeln('исходный массив:');
var a:=ArrRandom(30,0,1000).Println();
writeln('разность: ',a.Where(x->x mod 2=0).Max()-a.Where(x->x mod 2<>0).Max());
end.