Сейчас на сайте:
Пользователей: 0
Отсутствуют.
Роботов: 2
Yandex, Googlebot
Гостей: 84
Всех: 86
ВНИМАНИЕ! Конкурс по программированию!
Проект Programmers.kz и школа hotPen3D2D предлагает Вам курсы по веб-дизайну, веб-программированию и компьютерной графике. Подробности здесь.
Информация к новости
- Просмотров: 2646
- Автор: AlexanderMS
Сортировка массива методом прямого выбора
Категория: Программирование » Delphi » Статьи и исходники » Синтаксис » Сортировка
Алгоритм сортировки массива по возрастанию методом прямого выбора может быть представлен так:
-
Просматривая массив от первого элемента, найти минимальный элемент и поместить его на место первого элемента, а первый — на место минимального.
Просматривая массив от второго элемента, найти минимальный элемент и поместить его на место второго элемента, а второй — на место минимального.
И так далее до предпоследнего элемента.
Ниже представлена программа сортировки массива целых чисел по возрастанию
procedure TForm1.ButtonlClick(Sender: TObject);
const
SIZE = 10;
var
a: array[1..SIZE] of integer;
min: integer; { номер минимального элемента в части
массива от i до верхней границы массива }
j: integer; { номер элемента, сравниваемого с минимальным }
buf: integer; { буфер, используемый при обмене элементов массива }
i, k: integer;
begin
// ввод массива
for i := l to SIZE do
a[i] := StrToInt(StringGridl.Cells[i - 1, 0]); Iabel2.caption := '';
for i := l to SIZE - 1 do
begin
{ поиск минимального элемента в части массива от а[1] до a[SIZE]}
min := i;
for j := i + l to SIZE do
if a[j] < a[min] then
min := j;
{ поменяем местами a [min] и a[i] }
buf := a[i];
a[i] := a[min];
a[min] := buf;
{ вывод массива }
for k := l to SIZE do
Label2.caption := label2.caption + ' ' + IntTostr(a[k]);
Label2.caption := label2.caption + #13;
end;
Label2.caption := label2.caption + #13 + 'MaccMB отсортирован.';
end;Автор неизвестенИсточник: delphiworld.narod.ru
Вернуться
Комментариев: 0
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.




