Se proviamo ad eseguire alcune operazioni con Excel 2007, che dovrebbero avere come risultato 65536, alias 2 alla sedicesima, il risultato che otteniamo non è 65536 come atteso ma 100000. C’è chi propone un baco od un problema di visualizzazione…io penso più ad un easter egg, non proprio innocuo. Provate ad effettuare alcune operazioni come queste:
=5.1*12850
=10.2*6425
=20.4*3212.5
=40.8*1606.25
=77.1*850
=154.2*425
=212.5*308.4
=308.4*212.5
=425*154.2
Il risultato (fasullo) sarà 100000. Se aggiriamo il problema facendo un cast a intero, il risultato è corretto. E se facciamo un po’ di prove otteniamo dei risultati bizzarri:
- INT(850*77,1) è diverso da 2^16, nonostante il risultato sia sempre 65536, però 2^16 è uguale a 65536.
La spiegazione di Microsoft non sembra delle più veritiere…
Comment posted by Matteo
at 9/28/2007 11:40:00 AM
Sembra che sia realmente un baco, dovuto ad un’approssimazione in binario di alcuni numeri, come 77.1, dove lo 0.1 in binario viene rappresentato come un numero periodico. Non si capisce bene perchè però ci sono 12 casi in cui excel mostra male il risultato…bah…
Comment posted by Matteo
at 10/13/2007 3:44:00 AM
Ecco rilasciata l’apposita patch.