Форум: "Прочее";
Текущий архив: 2007.04.08;
Скачать: [xml.tar.bz2];
ВнизПожалуйста, помогите найти ошибку! Найти похожие ветки
← →
Gerew (2007-03-16 11:20) [0]Написал функцию бинарного поиска на паскале и на си.
Эта функция на си почему всегда возвращает значение true!
в чем дело?
function Find(x,l,r: int): boolean;
var mid: int;
begin
while l<=r do begin
mid:=(l+r) shr 1;
if b[mid]<x then r:=mid-1
else
if b[mid]>x then l:=mid+1
else begin
find:=true;
exit;
end;
end;
find:=false;
end;
bool find(int x, int l, int r){
int mid;
while (l<=r) {
mid=(l+r) >> 1;
if (b[mid]=x) return 1;
if (b[m]<x) r=mid-1;
if (b[m]>x) l=mid+1;
}
return 0;
}
← →
TUser © (2007-03-16 11:24) [1]
> if (b[m]<x) r=mid-1;
> if (b[m]>x) l=mid+1;
b[mid] ??
← →
Manic Mechanic © (2007-03-16 11:25) [2]Там ошибка
← →
z-z-z (2007-03-16 11:34) [3]> if (b[mid]=x) return 1;
if (b[mid]==x) return 1; ?
← →
icWasya © (2007-03-16 11:34) [4]найдите 10 отличий
if (b[mid]=x) return 1;
if (b[mid]==x) return 1;
← →
TUser © (2007-03-16 11:38) [5]Опс, это и у меня всегда так. С равенствами на си.
← →
Ega23 © (2007-03-16 11:38) [6]
> Опс, это и у меня всегда так. С равенствами на си.
Такая же фигня.
← →
wicked © (2007-03-16 11:45) [7]> TUser © (16.03.07 11:38) [5]
> Ega23 © (16.03.07 11:38) [6]
пользуйтесь правильными компиляторами... вот borland c тут warning даст "а может вы сравнить хотели, а не присвоить?"
← →
TUser © (2007-03-16 11:54) [8]> wicked © (16.03.07 11:45) [7]
Не выйдет. Я на си не пишу, а проблема возникает раз в пару месяцев на JavaScript.
← →
Думкин © (2007-03-16 11:57) [9]А в Х++ такое и не проканает:
if(ret=4) ret = 5;
А вот в ПХП все, что угодно проканает и даже иногда работать будет. :(
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.04.08;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.046 c