Лабораторный практикум


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



бет23/27
Дата07.10.2022
өлшемі2,64 Mb.
#152136
түріЛабораторная работа
1   ...   19   20   21   22   23   24   25   26   27
Байланысты:
Delphi задачи

Edit2.Text:=Edit2.Text+' '+IntToStr(M[I]);
{вывести элементы массива}
end;
end;
15. Обработка события нажатия кнопки Button2 «Вычислить» начинается с сортировки массива, которую можно записать с помощью оператора цикла for.


Для хранения номера элемента массива, сравниваемого с текущим (имеющим номер I) введем переменную целого типа J. Для запоминания элемента массива при обмене в процессе сортировки введем переменную Тmр.
Линейная сортировка массива выполняется путем перестановки элементов в массиве при соблюдении следующих условий: если в неотсортированной части массива найден элемент с номером J, больший, чем элемент с номером I (для сортировки по невозрастанию), или меньший, чем элемент с номером I (для сортировки по неубыванию). Поэтому можно записать следующий оператор if then else с составным условием:


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


Перестановка элементов массива осуществляется с использованием третьей переменной:


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


Вывод отсортированного массива в окне Edit3 можно записать оператором:


for I:=0 to N-1 do
Edit3.Text:=Edit3.Text+' '+IntToStr(M[I]);

В целом текст процедуры сортировки и вывода отсортированного массива будет выглядеть следующим образом:




procedure TForm1.Button2Click(Sender: TObject);
var
J, Tmp: integer;
begin


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


Достарыңызбен бөлісу:
1   ...   19   20   21   22   23   24   25   26   27




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет