
28.06.2010, 01:35
|
Прохожий
|
|
Регистрация: 20.06.2010
Сообщения: 12
Репутация: 10
|
|
вот мой код, немного бредовый, никак не пропрёт на мысль, подскажите что-нибудь
Код:
//сжатие массива
procedure TForm1.RadioButton3Click(Sender: TObject);
var
i,j,a,b,m,n,x,y:integer;
begin
a:=StrToInt(Edit3.Text);
b:=StrToInt(Edit4.Text);
m:=StringGrid1.RowCount-1;//кол-во строк
n:=StringGrid1.ColCount-1;//кол-во столбцов
for i:=1 to m do
begin
for j:=1 to n do
begin
if (a<=abs(massiv[i,j])) and (abs(massiv[i,j])<=b) then
begin
for x:=i to m do
begin
for y:=j to n do
begin
if y<n then
begin
StringGrid1.Cells[y,x]:=StringGrid1.Cells[y+1,x];
massiv[x,y]:=StrToInt(StringGrid1.Cells[y,x]);
StringGrid1.Cells[n,m]:=IntToStr(0);
massiv[m,n]:=StrToInt(StringGrid1.Cells[n,m]);
end
else
begin
StringGrid1.Cells[y,x]:=StringGrid1.Cells[1,x+1];
massiv[x,y]:=StrToInt(StringGrid1.Cells[y,x]);
StringGrid1.Cells[n,m]:=IntToStr(0);
massiv[m,n]:=StrToInt(StringGrid1.Cells[n,m]);
end;
end;
end;
end;
end;
end;
end;
|