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

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

Массив [D6, D7, XP]


Евгений ©   (2007-12-16 09:19:00) 

Скажите пожалуйста!!!!
Сформировать двухмерный массив. Преобразовать его в одномерный.

Как упорядочить этот одномерный массив по убыванию и снова преобразовать его в двухмерный?

a : array [0..30,0..30] of integer;
 n,i,m,k,p,f,j:integer;
b:array of integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
randomize;
n:=strtoint(edit1.Text);
m:=strtoint(edit2.Text);
if (n<31) and (m<31) then
begin
for i:=0 to n-1 do
for j:=0 to m-1 do
a[i,j]:=round(sin(random(30))*30);
stringgrid1.rowcount:=n+1;
stringgrid1.colcount:=m+1;
with stringgrid1 do
begin
i:=0;
for j:=1 to rowcount do
cells[i,j]:=inttostr(j);
end;
with stringgrid1 do
for i:=1 to n do
for j:=1 to m do
cells[j,i]:=inttostr(a[i-1,j-1]);
end
end;

procedure TForm1.Button2Click(Sender: TObject);  {преоразовывание в одномерный}
begin

edit3.text:=' ';
setlength(b,n*m);
k:=0;
for i:=0 to n-1 do
for j:=0 to m-1 do
begin
b[k]:=a[i,j];
edit3.text:=edit3.text+inttostr(b[k])+' ' ;
k:=k+1;
end;
end;


Евгений   (2007-12-16 12:26:00) [1]

почему он не сортирует? вроде правильно

procedure TForm1.Button3Click(Sender: TObject);
  var
  u,u_i,o,y:integer;
begin
p:=k-1;
edit4.text:=' ';

for k:=0 to p-1 do
begin
u:=0;
u_i:=0;
for y:=k to p do
begin
if b[y]>u_i then
begin
u_i:=b[y];
u:=y;
end;
u_i:=b[k];
b[k]:=b[u];
b[u]:=u_i;
end;
end;

          for k:=0 to p do
edit4.text:=edit4.text+inttostr(b[k])+' ' ;
end;


homm   (2007-12-16 09:44:00) [2]

> [2] Евгений   (16.12.07 09:41)

Прочти про «быструю сортировку». А преобразовывать туда-сюда не нужно ничего.


Евгений   (2007-12-16 09:41:00) [3]


> homm ©   (16.12.07 09:36) [1]
> > Как упорядочить этот одномерный массив по убыванию и снова
> > преобразовать его в двухмерный?Двумрность иль одномерность
> есть лишь суть воприятия дествительности, котораяя гласит
> что память линейна, а пространнство непрерывно. Меняется
> лишь способ доступа.


суть в том что ваще не получается.
не могли бы вы показать как  упорядочить этот одномерный массив? Плизз!!!


homm   (2007-12-16 09:36:00) [4]

> Как упорядочить этот одномерный массив по убыванию и снова
> преобразовать его в двухмерный?

Двумрность иль одномерность есть лишь суть воприятия дествительности, котораяя гласит что память линейна, а пространнство непрерывно. Меняется лишь способ доступа.


Наверх

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