Показать сообщение отдельно
  #19  
Старый 22.11.2010, 23:13
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Кажись понял в чем бага:
Код:
procedure DelEvenElement1(var a:TArray100;var cnt:integer);
 var i,j,k:integer;
  fl:boolean;
begin
  i:=cnt;
  while i>=1 do
    begin
      fl:=false;
      k:=1;
      while k<= i-1 do
      begin
       if a[i]=a[k] then
       begin
        fl:=true;
        for j:=k to cnt do
         a[j]:=a[j+1];
        cnt:=cnt-1;
        dec(i);
        DEC(k); //!!!
       end;
       inc(k);
      end;
      if fl then
      begin
      for j:=i to cnt do
       a[j]:=a[j+1];
      cnt:=cnt-1;
      end;
    dec(i);
    end;
 end;
Массив ведь сортирован? тогда он перескакивает через одну из 6-рок.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием