Procedure TForm1.Button2Click(Sender: TObject);



Var

J, Tmp: integer;

Begin

Edit3.Text: = ' ' ;

for I:= 0 to N - 2 do {изменять размер неотсортированной части массива}

for J:= I+1 to N-1 do {сравниваем поочередно I-й элемент неотсортированной части массива со всеми от I+1-го до конца}

begin {выбор операции в зависимости от значения свойства RadioGroup1.ItemIndex}

if (RadioGroup1.ItemIndex=O) and (M[I]<M[J])

or (RadioGroup1.ItemIndex=1) and (M[I]>M[J]) then

{если в неотсортированной части массива нашли J-й элемент, больший чем I-й (для сортировки по невозрастанию) или меньший чем 1-й(для сортировки по неубыванию)}
begin     {обменять местами элементы массива}

Т mр:= М[ I]; {запомнить на время значение М[I]}

M[I]:= M[J];

M[J]:= Tmp;

end;

End;

for I:=0 to N-l do   {вывести отсортированный массив}

Edit3.Text:=Edit3.Text+' ' +IntToStr(M[I]);

end;

 

16. Сохраните файлы проекта и программного модуля, откомпилируйте и запустите программу на выполнение.

 

17. Задавая различные значения числа элементов массива и щелкая мышью на кнопке Создать массив, создавайте линейный массив целых чисел. Выбирая при помощи переключателей в панели RadioGroup1 вариант сортировки и щелкая мышью на кнопке Отсортировать, как показано на рис. 7.3, убедитесь в правильной работе процедуры сортировки и вывода отсортированного массива.

 

 

Рис. 7.3. Окно приложения линейной сортировки массива

 

18. После окончания проверки работы приложения закройте его окно.

Дополнительное задание 1.

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


Дата добавления: 2020-11-15; просмотров: 73; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!