Ancora Errori, Articolo di Armando Di Grado
Pubblicato da bysal su 26 Settembre, 2007
Prelevato da Google Gruppi Excel.it
Chiedo scusa in anticipo per la lunghezza di questo post, ma la
ritengo necessaria
L’allarme gia’ lanciato per l’ormai famoso calcolo errato di Excel
(=850*77,1 che dovrebbe dare come risultato 65535 ma invece risulta
uguale a 100000) diventa ancor piu’ preoccupante dopo la scoperta di
altri calcoli errati
=77.1*850
=5.1*12850
=20.4*3212.5
=40.8*1606.25
=154.2*425
=212.5*308.4
=425*154.2
Immagino che ce ne saranno tanti altri, ancora non venuti alla luce.
La cosa strana e’ che tutti questi calcoli dovrebbero dare come
risultato 65535
Cosa vi dice questo numero?
- Numero delle porte del protocollo TCP-IP
- Valore piu’ grande rappresentabile usando 16 bit
- Numero di righe di Excel (versioni precedenti alla 2007) :-)
L’errore non si verifica per i calcoli senza decimali (se
moltiplichiamo 13107*5 il risultato e’ corretto)
Leggo in giro che un utente ha provato a studiare il comportamento
dell’anomalo risultato se sottoposto ad ulteriori operazioni. Il
risultato è il seguente: «supponiamo che la formula sia A1. A1+1
ritorna 100.001. A1 x 2 ritorna 131.070, come se A1 avesse dato 65.535
(il risultato corretto). A1 x 1 rimane 100.000, A1-1 ritorna 65.534,
A1/1 rimane 100.000 mentre A1/2 conduce a 32.767,5
Leggo anche altre segnalazioni di errori che riporto:
nel caso si scriva o calcoli un numero compreso tra 32.768 e 65.535
che contiene una porzione decimale di .848, il numero viene
visualizzato con una porzione decimale di .8479999999
Tutto questo a solo scopo informativo e certamente non per allarmare
gli utilizzatori di questo (fantastico) software.
Sta di fatto che uno di questi calcoli, neanche a farlo apposta e’
capitato in uno dei miei fogli di reportistica.
Un particolare prodotto (pila da 100 di supporti CD scrivibili) mi
costava 8,50 € + iva e in un anno ne avevo ordinati 6425
Il risultato era erroneamente 100000
Non vi dico il macello nel mio foglio, perche’ se questo numero viene
sommato ad un qualsiasi valore diverso da 1 torna a dare il risultato
corretto, altrimenti il risultato visualizzato e’ errato.
Fortunatamente, rappresentando questo valore fittizio (100000) in un
grafico ad istogramma, il valore che mostra equivale a 65535, ma
visualizzando l’etichetta dato con indicazione del valore restituisce
ancora una volta il valore errato.
Insomma un casino che potrete immaginare.
A mio parere la risoluzione di questo (questi?) bug dovrebbe essere di
priorita’ assoluta, perche’ immagino in quante applicazioni delicate
venga utilizzato questo software.
Applicazioni mediche prima di tutto, ma, perche’ no, anche economico-
finanziarie e magari militari!
Sinceramente in questa cosa io ci vedo una “umanizzazione” del
software, e di questa fallibilita’ non vi nascondo una certa
soddisfazione, nel senso che lo sento piu’ vicino a me, comune mortale
pieno di difetti e alla continua ricerca di riparare ai propri errori.
Chiedo al forum un parere su questa vicenda, e, scusandomi ancora per
la prolissita’,
Saluto tutti
Ciao
Armando Di Grado