Делфи. Сортировка массива.
Помогите сделать прямой обмен в 2-х мерном массиве!!!
procedure TForm1.Button2Click(Sender: TObject); const SIZE=100; var a:array[1..SIZE] of integer; k:integer; // текущий элемент массива i:integer; // индекс для ввода и вывода массива changed:boolean; // TRUE, если в текущем цикле были обмены buf:integer; // буфер для обмена элементов массива begin // ввод массива for i:=1 to SIZE do a[i] := StrToInt(StringGrid1.Cells[i-1,0]); label3.caption:=''; // сортирвка массива repeat changed:=FALSE; // пусть в текущем цикле нет обменов for k:=0 to SIZE-1 do if a[k] > a[k+1] then begin // обменяем k-ый и k+1-ый элементы buf := a[k]; a[k] := a[k+1]; a[k+1] := buf; changed := TRUE; end; // вывод массива for i:=0 to SIZE do Label3.caption:=label3.caption+' '+IntTostr(a[i]); Label3.caption:=label3.caption+#13; until not changed; // если не было обменов, значит // массив отсортирован Label3.caption:=label3.caption+#13+'Массив отсортирован.'; end; end. |
А в чем проблема? Заведите двумерный массив, чтение из StringGrid1 производите через вложенные циклы, внешний цикл - по столбцам, внутренний - по строкам. В качестве максимального значения параметра цикла можно указывать соответствующий размер таблицы, а не только SIZE.Естественно, что в свойствах StringGrid нужно указать максимальное количество строк и столбцов равным значению SIZE-1, чтобы не было ошибки при работе с массивом. В алгоритм сортировки также добавьте цикл.
|
Вложений: 1
Проще ща сому прогу скину,помогите чтоб она заработала)
|
Не могу помочь, сижу с мобилы, нет среды под рукой, чтобы прогу редактировать.
Насколько срочно вам нужно прогу сделать? До завтра сроки терпят? |
Ну эт курсовая неделя срока))Ах да я в делфи не бум бум((то есть не шарю((
|
Какая-то у вас несерьезная курсовая на сортировку массива получается. Давайте ее усложним по максимуму :))
|
Задание таково нужна сортировка (прямого включения,двоичного включения,прямого обмена и быстрая сортировка(QuickSort))
|
Часовой пояс GMT +4, время: 13:05. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.