Показать сообщение отдельно
  #5  
Старый 24.04.2010, 00:48
Asinkrit Asinkrit вне форума
Местный
 
Регистрация: 29.10.2009
Сообщения: 446
Репутация: 271
По умолчанию

Вы первых, массив начинается с нулегого элемента,
Во вторых, i+1 у тебя вылетает за диапозон, так как, High(a) - последний элемент.
В последнем цикле у тебя не хватает скобок begin end;
Да и все можно обработать в одном цикле..
Код:
...
Max:=a[Low(a)];
Min:=Max;
s:=Max;

for i:=Low(a)+1 to High(a) do
  begin
  if a[i] > Max then Max:=a[i];
  if a[i] < Min then Min:=a[i];
  if i mod 2 <>0 then
    if abs(a[i]) > s then
     begin
     s:= a[i];
     Edit2.text:=floattostr(s);
     Application.ProcessMessages;
     end;
  end;

Edit1.Text:= floattostr(max+min);
SetLength(a, 0);
...
Кстати, для выполнения твоего задания, массив впринципе не нужен, можно сделать и без него.)
Ответить с цитированием