if AnsiCompareStr(uppercase(value),uppercase(s))<0 then r:=c else
if AnsiCompareStr(uppercase(value),uppercase(s))>0 then l:=c+1 else
if AnsiCompareStr(uppercase(value),uppercase(s))=0 then r:=c;
Мало того, что “<=” разбито на “<” и “=” с одинаковым исходом, так тут вообще достаточно одной проверки:
if AnsiCompareStr(uppercase(value),uppercase(s))<=0 then r:=c else l:=c+1;
UPD. Я в этот пост буду складывать все такие примеры!
if (doall) then
begin
if not doall then
begin