Цитата:
Сообщение от xxxmaximal
не сортирует(вывод не правильный у меня по идее)
|
Функция сортировки в точности соответствует оригиналу (не считая "перемены мест слагаемых"), поэтому она не может не сортировать или неправильно сортировать. А вот используется она неправильно - у тебя фактически 2 массива (под именем
v). Вот и получается что из memo1 заполняется тот массив
v что объявлен в методе Button1Click, сортируется тот массив
v что объявлен в процедуре qSort, а отображается в memo2 опять тот массив
v что в методе Button1Click, который естественно не претерпел никаких сортировок или других изменений с момента его заполнения из memo1.
Для решения этой проблемы, в простейшем случае просто объяви этот массив глобальным, до процедур qSort и Button1Click, и убери объявление этого массива из других мест:
Код:
var
v: array[1..80]of Integer;
procedure qSort(l, r: Integer);
var
i, j: Integer;
w, q: Integer;
begin
.....Дальше по тексту
procedure TForm1.Button1Click(Sender: TObject);
var
i, n, r: Integer;
begin
.....Дальше по тексту