Eksceļa reizrēķins
- 2007. gada 26. septembrī, plkst. 11:28
- 25 komentāri


Teksta versija – veiciet reizināšanas operāciju ekscelī: 850*77.1. Rezultātam būtu jābūt 65535. Ja kāds nezināja, mēs dzīvojam binārajā laikmetā, kad datori tomēr peldošā punkta operācijas aizvien veic ar kļūdām. Protams, ja netiek izmantota kāda arbitrary precision metode.
Sākotnējā info (manā rīcībā nonākusī saite).
Šie ir tie 25 komentāri (pievienot savu)
Excel 2003 neizdevās reproducēt…
Neizdevās atkārtot
Konkrētais gļuks ir MICRO$OFT Excel 2007 gļuks. Īsti nesaprotu laacz attieksmi un paviršību(?), mēģinot konkrēto vaininieku mazgāt baltu.
mehdi, ko es mēģinu mazgāt baltu? Tā par noapaļošanas problēmām ir atsevišķa patiesība.
Man arī ar 2003-o rāda pareizi.
Taisni tā – tā ir atsevišķa patiesība, kura ir zināma xx gadus un kura nekādi neattaisno šāda līmeņa kļūdas parādīšanos planētas Zeme superīgākās kompānijas superproduktā Excel 2007 (starp citu, kāpēc iepr. exceļus šī kļūda neņem, ja reiz vainīgs ir FPU un ar to ir jāsamierinās).
Vienkārši M$ vārdu neredzēju pieminētu tavos ievadvārdos.
Tas gļuks parādās tikai Excel 2007. Zīmīgi tas, ka 65535 ir kā reiz 0xFFFF – pēdējais iespējamais skaitlis, kurš salien 16 bitos. Acīmredzot kautko saputrojuši pie pārejas uz vairāk bitiem.
Labākais jociņš, kas lasīts par šo tēmu: OOXML “standartā” tiks iekļauts jauns tags: multiplyLikeExcel2007.
mehdi: es nesaku, ka tā ir tipiska FPU kļūda (pat ar visu to šāds rezultāts nav pieņemams).
Te ir viss: http://docs.sun.com/source/806-3568/ncg_goldberg.h...
http://blogs.msdn.com/excel/archive/2007/09/25/cal...
Mja, par šito es arī sasmējos, kad izlasīju iekš Digg.com un SlashDot :D Tikai sāku domāt- vai tā ir patiesība, bet redz, Laacz pierādīja… ;)
Microsoft: “We take calculation in Excel very seriously and we do everything we can in order to ensure that calculation is correct for all cases. “
The usual BS of MS
excelis un words jau vispār ir gudrāki par cilvēki. tāka piekrīties viņam un neapšaubiet.
Mikus dotais links ir vērtīgs. Tur var izlasīt, ka kļūda patiesi ir, bet tikai datu rādīšanas daļā. Reālā vērtība cellē ir pareiza, un visi turpmākie aprēķini ar to arī būs korekti.
Vilx- apskati lāča “Sākotnējā info” linku tur, kur “Dana DeLouis” saka:
What’s even stranger is this: Suppose the formula is in A1.
=A1+1 returns 100001, which appears to show the formula is in fact 100000
and a very Serious problem.
Ā, un tur arī bija raxtīts, ka M$ jau ir izgatavojis labojumu, un tagad atktīvi to testē. Visticamāk jau šovakar/rīt tas būs piejams. :)
Kļūdas ir visos softos. Ja vien viņi turēs solījumus, tad būs demonstrējuši diezgan labu reakcijas laiku.
Nedaudz “pačakarējos” ap šo kļūdu.
=A1+1 tiešām dod 100001, bet =A1+2 atkal 65537. Visnepatīkamākais, ja izmantojam piem. =ROUND(A1;2), tad tālākie aprēķini gan izmanto 100000.
Jaa, tas jau bija rakstiits saakuma iedotajaa lapaa tieshi taada atekstaa, tikai angliski …
nuta ko: arī taisam pollu – cik ilgs būs M$ reakcijas laix ;)
p.s. kukainis interesants :)
Gribēju piebilst, ka tieši 2007.excelī, neskatoties uz būtiskajiem funkcionālajiem pārveidojumiem, jaunievedumiem un fīčām, ir parādījušās diezgan daudz muļķīgu gļuku, ar kuriem man nācies saskarties, no kuriem tizlākais ir tāds, ka slikti strādā formulu “vilkšana” filtra režīmā – nezkāpēc formula “ievelkas” arī laukos, kuri nav atfiltrēti. Vēl šādas tādas problēmas, kas iepriekšējās versijās nebija.
http://www.joelonsoftware.com/items/2007/09/26b.ht...
njā… Bils atkal slikti strādā…
Slašdotā bija labs koments:
I bet they put that feature in for selling Vista volume licenses. In bundles of 850 the price is $77.10 each which is $100,000.
paldies laacz par info., arvien pārliecinos, ka Windows Vista & subprodukti ir nedraudzīgs lietotājam
ar cieņu
Jūsu e-minence