PERL NEUMI POCITAT!!!

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Středa Září 27 14:43:59 CEST 2000


On Tue, 26 Sep 2000, Dan Ohnesorg wrote:

> No ja nevim, ale 9688.9 neni zas tak velke cislo, tohle se bezne stava
> okolo problematicky malych nebo velkych cisel.

9688.9 = 9688 + 9/10 = 9688 + (9/5)/2

9/5 nelze presne vyjadrit ve tvaru M * 2^E, kde M a E jsou cela cisla,
coz znamena, ze neexistuje presne vyjadreni tehoz tvaru pro 9688.9,
a tudiz je do vypoctu zanesena chyba hned od pocatku. QED.


On Tue, 26 Sep 2000, Dominik Formanek wrote:

> jeste mi to dela dalsi zajimave veci. Mam program na vypocet vycetky a
> denni trzby a ten mi dnes zahlasil:

Opakujte po mne: kdyz pocitam penize, tak na to nepouzivam typy s plovouci
desetinou carkou. Nikdy. Jak uz bylo doporucovano, nejlepsi je to pocitat
treba v (celych) halerich. Kdyz jde o velke castky, je take dobre
kontrolovat si preteceni.

> 9688.9-9480.7+2375.4-2583.6=1.81 (spravne ma byt 0)

Muj Perl, podobne jako Koaluv, vypocital neco v radu 10^-12.


On Tue, 26 Sep 2000, Dominik Formanek wrote:

> Tohle nechapu. BTW: myslel jsem si, ze perl uchovava promene (i
> ciselne) v ASCII ne v bin...

Jak jiz bylo receno, pro ucely pocitani jsou vzdy pouzivany
"nativni" ciselne formaty.


On Wed, 27 Sep 2000, Michal Krause wrote:

> No, ja bych to nevidel na zajimavy problem, ale na prusvih jako Brno
> (Brnaci prominou :). Prave jsem si tim hral (stejna verze Perlu, na RH)
> a ke kazdemu realnemu cislu, ktere jsem zkousel, se mi podarilo najit
> behem nekolika mala pokusu jine cislo, s nimz je vysledek prosteho
> odecitani spatny. Nekolikrat jsem si myslel, ze jsem odhalil zavislost,
> pri niz k tomu dojde, ale kazdy dalsi pokus moji teorii naboril :)
> Takze to vzdavam, nechavam to matematikum a jsem rad, ze si v Perlu
> nevedu ucetnictvi :)

Co takhle poskytnout nejake priklady? Ja nerikam, ze tam zadna chyba neni,
ale rozdil 2 vs. 1.999999...99 neni priklad chybneho vypoctu, ale chybnych
predpokladu (ze je vypocet provaden presne, ze maji operace obvykle
algebraicke vlastnosti jako je asociativita apod.).

BTW: Nepocitalo to nahodou Pentium? ;)


On Wed, 27 Sep 2000, Dominik Formanek wrote:

> No ja to muzu dokazat v jednom specifickym programu (program na
> vycetku) a vcerejsi data....

Ja muzu dokazat, ze je Zeme placata a nesou ji ctyri sloni pochodujici
po hrbete obrovske zelvy, ale nikomu ten dukaz neukazu, aby mi to lidi
neokoukali. :)


--Pavel Kankovsky aka Peak  [ Boycott Microsoft--http://www.vcnet.com/bms ]
"Resistance is futile. Open your source code and prepare for assimilation."



Další informace o konferenci Linux