| 
| 
 | Вопрос # 4 908/ вопрос открыт / | 
 |  Здравствуйте, уважаемые эксперты!
 Заполнить двумерный массив размером n x m "Змейкой"
 Например:
 1 2 3 4 5
 10 9 8 7 6
 11 12 13 14 15
 и т.д пример заполнения такой
 Вообщем змейкой)))
 И удалить k строку, k нужно ввести самому.
 Нужно сделать в форме, через стрингрид
 
 Помогите плиз сделать добрые люди!
 SKype: artemzhavoronkin
 
|  |   Вопрос задал: barsichek (статус: Посетитель)Вопрос отправлен: 12 января 2011, 14:52
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 9; последнее сообщение — 16 января 2011, 11:54; участников в обсуждении: 3. 
|   | min@y™ (статус: Доктор наук), 12 января 2011, 15:02 [#1]: Цитата (barsichek): Помогите плиз сделать добрые люди! Чем помочь, что не получается?
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  12 января 2011, 15:12: Вопрос перемещён из тематического раздела Delphi » Прочее в раздел Лабораторный практикум » Delphi модератором Ерёмин А.А. 
|   | Вадим К (статус: Академик), 12 января 2011, 15:14 [#2]:наверно где то так 
 for i := 1 to height do
  for j := 1 to width do
    if odd(i) then
      str_grd[i,j] := (i-1)*width+j
    else
      str_grd[i,width - j + 1] := (i-1)*width+jЭто идея, которая решит задачу заполнения. нужно только чуточку доработать.Галочка "подтверждения прочтения" - вселенское зло. |  
|   | barsichek (статус: Посетитель), 12 января 2011, 20:38 [#3]:Можно полностью в архиве, я сделал но у меня заполняет змейкой с начало строки, не правильно.  Вот нужно что бы такая цепочка, что то никак.. |  
|   | min@y™ (статус: Доктор наук), 13 января 2011, 08:21 [#4]: Цитата (barsichek): Можно полностью в архиве А причём тут архив?
 
 Цитата (barsichek): я сделал но у меня заполняет змейкой с начало строки, не правильно. Вот нужно что бы такая цепочка, что то никак..  Опять ты пытаешься работать с гридом как с массивом. Я ж тебе ещё в прошлом году говорил, что работать с данными надо только в памяти, а визуальные компоненты должны служить только для ввода исходных данных и вывода результатов.
 Что за препод у вас такой, который учит делать неправильно? Дай мне его e-mail, я ему петицию накатаю со ссылкой на этот сайт, пусть сам поучится!
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | barsichek (статус: Посетитель), 13 января 2011, 18:50 [#5]:Вот по общайся) Только она помнит конечно задачу что мне дала, индивидуально, я просто ребятам давал логин что бы отписались тут, они кстати сдали ды еще на 5 ) Помнит что дала мне заполнить змейкой
 
 http://vkontakte.ru/id67897491
 |  
|   | min@y™ (статус: Доктор наук), 13 января 2011, 18:55 [#6]:Я не пользуюсь соц. сетями и просил адрес e-mail. Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | min@y™ (статус: Доктор наук), 13 января 2011, 18:56 [#7]:Слышь, а ты в каком государстве живёшь, а? Случайно не в Турции? Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | barsichek (статус: Посетитель), 14 января 2011, 19:25 [#8]:На слышь... другое маленько. Я что с ней живу? По думай откуда мне взять её мыло.
 |  
|   | barsichek (статус: Посетитель), 16 января 2011, 11:54 [#9]: type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    StringGrid1: TStringGrid;
    Button2: TButton;
    Button1: TButton;
    Label3: TLabel;
    Edit3: TEdit;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
  m:array of array of integer;
  i,j,c,r,x,w,q:integer;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Button2Click(Sender: TObject);
begin
c:=strtoint(edit1.Text);
r:=strtoint(edit2.Text);
stringgrid1.ColCount:=c;
stringgrid1.RowCount:=r;
setlength(m,c,r);
 
x:=1;
for j:=0 to r-1 do
begin
 if j mod 2=0 then
  begin
    for i:=0 to c-1 do
       begin
         m[i,j]:=x;
         x:=x+1;
       end;
  end;
 
    if j mod 2<>0 then
      begin
         for w:=c-1 downto 0 do
           begin
              for i:=0 to c-1 do
              m[w,j]:=x;
      x:=x+1;
           end;
      end;
end;
 
 
 
 
 
    for i:=0 to c-1 do
     for j:=0 to r-1 do
      stringgrid1.Cells[i,j]:=inttostr(m[i,j]);
  end;
 
 
 
procedure TForm1.Button1Click(Sender: TObject);
begin
q:=strtoint(edit3.Text);
  for i:=0 to c-1 do
    stringgrid1.Cells[i,q]:='';
end;
 
end. |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |