Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 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 Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: barsichek (статус: Посетитель)
Вопрос отправлен: 12 января 2011, 14:52
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 9; последнее сообщение — 16 января 2011, 11:54; участников в обсуждении: 3.
min@y™

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

barsichek (статус: Посетитель), 12 января 2011, 20:38 [#3]:

Можно полностью в архиве, я сделал но у меня заполняет змейкой с начало строки, не правильно. Вот нужно что бы такая цепочка, что то никак..
min@y™

min@y™ (статус: Доктор наук), 13 января 2011, 08:21 [#4]:

Цитата (barsichek):

Можно полностью в архиве

А причём тут архив?

Цитата (barsichek):

я сделал но у меня заполняет змейкой с начало строки, не правильно. Вот нужно что бы такая цепочка, что то никак..

Опять ты пытаешься работать с гридом как с массивом. Я ж тебе ещё в прошлом году говорил, что работать с данными надо только в памяти, а визуальные компоненты должны служить только для ввода исходных данных и вывода результатов.
Что за препод у вас такой, который учит делать неправильно? Дай мне его e-mail, я ему петицию накатаю со ссылкой на этот сайт, пусть сам поучится!
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
barsichek

barsichek (статус: Посетитель), 13 января 2011, 18:50 [#5]:

Вот по общайся)
Только она помнит конечно задачу что мне дала, индивидуально, я просто ребятам давал логин что бы отписались тут, они кстати сдали ды еще на 5 ) Помнит что дала мне заполнить змейкой

http://vkontakte.ru/id67897491
min@y™

min@y™ (статус: Доктор наук), 13 января 2011, 18:55 [#6]:

Я не пользуюсь соц. сетями и просил адрес e-mail.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
min@y™

min@y™ (статус: Доктор наук), 13 января 2011, 18:56 [#7]:

Слышь, а ты в каком государстве живёшь, а? Случайно не в Турции?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
barsichek

barsichek (статус: Посетитель), 14 января 2011, 19:25 [#8]:

На слышь... другое маленько.
Я что с ней живу? По думай откуда мне взять её мыло.
barsichek

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.

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:51
Выполнено за 0.03 сек.