Извините меня, в институте задали практическую написать по способам сортировки.
Мне достался "пузырьковый" метод. В программировании я ноль.
 
 У меня есть массив чисел, к примеру,: 8, 6, 0, 6, 3, 3, 0, 6
Процедуру сортировки содрал из Википедии // _http://ru.wikipedia.org/wiki/Сортировка_пузырьком
- Код: Выделить всё
- Flag := true;
 while Flag do
 begin
 Flag := false;
 for i := 0 to ElementCnt - 1 do
 begin
 if TempArray[i] > TempArray[i + 1] then
 begin
 TempInt := TempArray[i];
 TempArray[i] := TempArray[i + 1];
 TempArray[i + 1] := TempInt;
 Flag := true;
 end;
 end;
 end;
После сортировки:
- Код: Выделить всё
- исходный 8, 6, 0, 6, 3, 3, 0, 6
 выходной 0, 0, 0, 3, 3, 6, 6, 6
Если ещё раз нажать на кнопку, по которой вызывается процедура сортировки,
то всё встанет на свои места:
- Код: Выделить всё
- исходный 8, 6, 0, 6, 3, 3, 0, 6
 выходной 0, 0, 3, 3, 6, 6, 6, 8
Причём такое бывает не всегда, иногда сразу нормально сортирует,
а нажмёшь ещё раз на кнопку сортировки - опять 0 впереди добавляется,
ещё раз нажмёшь - всё в порядке и все последующие нажатия всё хорошо.
Может я с псевдокода неправильно чего перевёл? Не знаю...
Помогите пожалуйста




 
 