Показать сообщение отдельно
  #1  
Старый 25.11.2009, 12:59
boxep boxep вне форума
Прохожий
 
Регистрация: 20.10.2008
Сообщения: 49
Репутация: 10
По умолчанию Не сортируется первый элемент...

Помогите, пожалуйста, разобраться, сделал сортировку методом четных и нечетных транспозиций, всё хорошо сортируется, а первый элемент нет.
Помогите найти ошибку в коде?

Код:
procedure TForm1.Button2Click(Sender: TObject);
var
   i,r,j,k:word;
   flag:boolean;
begin
Form1.ListBox2.Clear;
   SetLength(B,N);
   repeat
  for j:=1 to 2 do
    begin
      flag:=false;
      i:=j;
        while i<n do
        begin
          if B[i]>B[i+1] then
          begin
            r:=B[i+1];
            B[i+1]:=B[i];
            B[i]:=r;
            flag:=true;
            end;
          i:=i+2
          end;
          end;
        until flag=false;
  for i:=0 to n-1 do
   Form1.ListBox2.Items.Add(IntToStr(B[i]));
Ответить с цитированием