Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Простая программа [D5, Win95/98]


_Alex_ ©   (2002-08-17 11:47:00) 

Привожу часть просто часть программы, на форме 2 кнопки
нажатие на Button1 показать массив, нажатие на Button2 присвоить
элементу массива 3,4 значение 1. Все просто. Но.
У меня происходит следующее. Жму первую, смотрю массив чистый.
жму вторую, присвоили. Потом жму первую и вижу следующее
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
я присаиваю значение одному элементу, паралельно сним
на 10 левее, и на 1 выше появляются те же самые значения,
фантастика какая-то. Может у меня чего-то глючит. Пожалуйста проверьте у себя кто-нибудь. Что с этим делать.
Код:

unit Unit1;
......
......
{ Public declarations }
end;

const
box_s=30;
R_X=15;
R_Y=10;

type l=record
massiv : array [1..R_X,1..R_Y] of integer;
end;

var
Form1: TForm1;
m: l;


implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
i,j: integer;
mes: string;
begin
mes:="";
for i:=1 to r_y do
begin
mes:=mes+inttostr(i)+": ";
for j:=1 to r_x do
mes:=mes+" "+inttostr(m.massiv[i,j]);
mes:=mes+ #13+#10;
end;
showmessage(mes);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
m.massiv[3,4]:=1;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
i,j: integer;
begin
for i:=1 to r_y do
for j:=1 to r_x do
m.massiv[i,j]:=0;
end;

end.


_Alex_   (2002-08-17 13:39:00) [1]

Отбой!
Проверил.
В объявлении масиива надо поменять местами r_x и r_y


_Alex_   (2002-08-17 13:30:00) [2]

Даже если я и поменяю местами i и j.
У меня появляются две единицы, а должна одна!
Проверьте саму программу.


Набережных С.   (2002-08-17 12:52:00) [3]


> Может у меня чего-то глючит.

Несомненно. А конкретно - перепутал местами iи j


Наверх

Титульная страница Поиск, карта сайта Написать письмо