Показать сообщение отдельно
  #8  
Старый 28.06.2010, 01:35
Torres Torres вне форума
Прохожий
 
Регистрация: 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;
Ответить с цитированием