Почему не обновляет Локальные максимумы
Код:
var
a:array[1..7] of integer;
i,n,max:integer;
b:real;
begin
StringGrid1.rows[1].clear; //отчистка первой строки
StringGrid1.rows[2].clear; // Отчистка второй строки
randomize;
n:=StrToInt(Edit1.Text);
for i:=1 to n do
begin
StringGrid1.Cells[i,1]:=IntToStr(random(100));
end;
max:=1;
for i:=2 to n-1 do
begin
if (a[i]>a[i-1])and(a[i]>a[i+1]) then max:=i;
if (max=(i-1))and(max>1) then a[max]:=0;
end;
if (max=(n-1))and(max>1) then a[max]:=0;
for i := 0 to n do
StringGrid1.Cells[i,2]:=intToStr(a[i]);
end;
a:array[1..7] of integer;
i,n,max:integer;
b:real;
begin
StringGrid1.rows[1].clear; //отчистка первой строки
StringGrid1.rows[2].clear; // Отчистка второй строки
randomize;
n:=StrToInt(Edit1.Text);
for i:=1 to n do
begin
StringGrid1.Cells[i,1]:=IntToStr(random(100));
end;
max:=1;
for i:=2 to n-1 do
begin
if (a[i]>a[i-1])and(a[i]>a[i+1]) then max:=i;
if (max=(i-1))and(max>1) then a[max]:=0;
end;
if (max=(n-1))and(max>1) then a[max]:=0;
for i := 0 to n do
StringGrid1.Cells[i,2]:=intToStr(a[i]);
end;