Article View: pl.comp.objects
Article #14779Re: Agile people still don't get it....
From: Adam Karpierz
Date: Mon, 12 Jun 2006 08:30
Date: Mon, 12 Jun 2006 08:30
56 lines
2743 bytes
2743 bytes
> Pan uwaznie to czytal...? W miare uwaznie. Co w tym takiego dziwnego ? Malo to nawet samych algorytmow bywalo delikatnie mowiac "nie dzialajacych zgodnei z zalozeniami" ? > Pewnie mnostwo publikacji wciaz zawiera ten sam blad. Normalka. Copy & Paste based development > Nie jest wiec to problem jednej skopanej implementacji. Powiem tak. W numeryce az sie zawsze roilo od przypadkow (a + b + c) * z / y To do programisty nalezalo temu podobne wyraznienia tak napisac, aby nie wystapil overflow ani NAN ani INF itp. Daletego uwazam dalej ze jest to spie.. implementacja a nei algorytm. (niewazne kto ja napisal: autor algorytmu czy podrzedny programista jak np ja). Teoterycznie/matematycznie (nie wnikajac w nature intow longow czy innych, zapis (a + b) integer_divide 2 jest przeciez poprawny A to co oni kombinuja z ta naprawa w Javovej implementacji wola o pomste do nieba. <cytat> The bug is in this line: 6: int mid =(low + high) / 2;So what's the best way to fix the bug? Here's one way: 6: int mid = low + ((high - low) / 2); Probably faster, and arguably as clear is: 6: int mid = (low + high) >>> 1; In C and C++ (where you don't have the >>> operator), you can do this: 6: mid = ((unsigned) (low + high)) >> 1;<cytat> Czy nie mozna po prostu ?: 6: int mid =((long)low + (long)high) / 2;Z w/w ich poprawek podoba mi sie jedynie ta: 6: int mid = low + ((high - low) / 2); (w C++ juz tak latwo nie ma) PS: a ta ksiazke Bentley "Programming Pearls" mam od bardzo dawna AK
Technical Details
Message-ID:
<e6j8ne$oca$1@inews.gazeta.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mailReferences:
<06060804173458@polnews.pl> <e6grok$r3b$1@kujawiak.man.lodz.pl> <06061203523546@polnews.pl> <brlp829ovg258639nh034mbgo9q87tkkjv@4ax.com> <06061205435287@polnews.pl> <e6j6d4$e78$1@inews.gazeta.pl> <e6j7e5$iod$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: "Adam Karpierz" <karpierz@NOOOOSPAAAAMpython.pl> Newsgroups: pl.comp.objects Subject: Re: Agile people still don't get it.... Date: Mon, 12 Jun 2006 10:30:37 +0200 Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 58 Message-ID: <e6j8ne$oca$1@inews.gazeta.pl> References: <06060804173458@polnews.pl> <e6grok$r3b$1@kujawiak.man.lodz.pl> <06061203523546@polnews.pl> <brlp829ovg258639nh034mbgo9q87tkkjv@4ax.com> <06061205435287@polnews.pl> <e6j6d4$e78$1@inews.gazeta.pl> <e6j7e5$iod$1@inews.gazeta.pl> NNTP-Posting-Host: nat-plk.mentorg.com X-Trace: inews.gazeta.pl 1150101038 24970 139.181.144.34 (12 Jun 2006 08:30:38 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Mon, 12 Jun 2006 08:30:38 +0000 (UTC) X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2869 X-Priority: 3 X-RFC2646: Format=Flowed; Original X-Newsreader: Microsoft Outlook Express 6.00.2900.2869 X-User: karpierz X-MSMail-Priority: Normal MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit