Consenso all'uso dei cookies

SITO1 -- SITO2 -- Forum1 -- CercaGlobale -- Informativa su Cookie e Privacy


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
Errore somma!! sembra impossibile
#1
Ciao,
Mi ha fatto impazzire una somma.
Dato che al risultato di questa somma era legata una funzione che dava errore e non capivo perchè....
Ora ho trovato che nei decimali (oltre la terza cifra) dovrebbero essere tutti zero ma così non è!
Perchè? o è il mio PC che è impazzito  Angry  Angry  Angry  Angry  Angry
allego file e se a voi dà il risultato esatto vorrà dire che è il mio PC  Piange  Piange  Piange  Piange

GRAZIE dell'attenzione
Alex


Allegati
.ods   somme pazze.ods (Dimensione: 17,46 KB / Download: 14)
combatti per migliorare, mai per distruggere. la vita è come uno specchio, sorridi e ti sorriderà
Cita messaggio
Grazie da:
#2
Buonasera, anche a me da risultati differenti (anche dai tuoi). Avevo letto di questo problema con i calcoli decimali per excel, purtroppo non ricordo dove, probabilmente ce l'ha anche calc.


Allegati
.ods   somme pazze(2).ods (Dimensione: 22,7 KB / Download: 2)
mandi...Eugenio
Cita messaggio
Grazie da: Alessandro Moroni
#3
I numeri in virgola mobile hanno una precisione finita;
per esempio in singola precisione (rappresentazione a 32 bit) ci sono 6 cifre significative (dopo la virgola intendo), mentre a doppia precisione (64 bit) ce ne sono 15.
I risultati delle operazioni inoltre dipendono dal particolare numero: per esempio il numero decimale (in base 10) 0,1 ha una sola cifra decimale, invece nel sistema binario è un numero periodico rappresentato con 0,0001100110011...
ossia 0,00011 (la parte in grassetto rosso è il periodo)
il fatto che non ci sia una rappresentazione binaria finita unita ad un numero limitato di cifre significative porta a degli errori di calcolo in virgola mobile che si propagano.
E' assolutamente inutile pretendere di fare calcoli precisi in virgola mobile (per esempio calcoli finanziari) usando applicazione come Excel/Calc

Nel tuo foglio, se ci fai caso, non ci sono mai tutti zeri perché le cifre dopo la 6-7° dopo la virgola non contano nulla. Nella colonna centrale invece ci deve essere qualche valore sporco invisibile perché se selezioni solo le 15 righe con numeri (ma non le righe vuote) il risultato è ancora -28.54 (circa)
Il mio blog: ZEROZEROCENT.BLOGSPOT.COM
LEGGE DI MURPHY: SE QUALCOSA PUO' ANDAR MALE, LO FARA'
VERSIONE QUANTISTICA DELLA LEGGE DI MURPHY: TUTTO VA MALE CONTEMPORANEAMENTE
Cita messaggio
#4
BAT e eu66, vi ringrazio.
Ho capito poco (la scuola manca) ma ne prendo atto, cambiando la funzione da:

SE(A-B=0;"OK";"NEGATIVO")
a
=SE((((A1-B1)-(B1-A1))<0,0001);"OK";"NEGATIVO")

Mi rimane sempre però il dubbio...... perché cambiando l'ordine degli addendi il risultato cambia? ma...
combatti per migliorare, mai per distruggere. la vita è come uno specchio, sorridi e ti sorriderà
Cita messaggio
Grazie da:
#5
Non capisco bene il calcolo che vuoi fare, ma ti posso dire che la prima formula è sbagliata. Funzionerebbe come formula matriciale (ctrl+shift+enter per confermarla) se fosse così
=SE(A:A-B:B=0;"OK";"NEGATIVO") 
mandi...Eugenio
Cita messaggio
Grazie da: Alessandro Moroni
#6
Il risultato cambia perchè hai scritto formule differenti (lascia perdere il fatto che in una c'è scritto =0 e nell'altra <0):
nella prima scrivi
A1-B1 (ti metto i numeri, altrimenti manca qualcosa nella formula)
nella seconda
(A1-B1)-(B1-A1)
che equivale a scrivere
2*A1-2*B1

Quello che ha scritto BAT, applicato a un qualsiasi programma che fa conti, anche la calcolatrice, vuol dire in pratica che non puoi inserire un numero di cifre altissimo, perchè c'è il limite fisico delle approssimazioni; diversamente se per ipotesi facessi tutto a mano, non avresti problemi di numero di cifre significative, però questo capisco che non si possa fare.
Quindi tieni poche cifre dopo la virgola.

(02-02-2018,21:22 )eu66 Ha scritto: Avevo letto di questo problema con i calcoli decimali per excel, purtroppo non ricordo dove, probabilmente ce l'ha anche calc.
Forse ti riferivi a questo
http://www.istitutomajorana.it/forum2/Th...alc?page=9
in cui bisognava ordinare un elenco e in cui avevo pensato a una soluzione proprio per ovviare a questo problema.
Se interessa è al post 88
Cita messaggio
Grazie da: Alessandro Moroni
#7
Ciao, Giove.
Giusto quello che hai scritto. Ho sbagliato io

non  SE(A-B=0;"OK";"NEGATIVO")
ma SE(A1-B1=0;"OK";"NEGATIVO")

avrei dovuto scrivere:
SE(A1-B1<0,001;"OK";"NEGATIVO")


per quanto riguarda i decimali io ne uso due essendo cifre € (ma non formattate a valuta).
Non capisco quello che mi sia successo, mentre prima funzionava tutto alla perfezione (è il controllo di un estratto conto) ora non più ed è nato questo problema dei decimali.
Allego, per meglio spiegarmi il file così come è.


Allegati
.ods   somme pazze2.ods (Dimensione: 18,77 KB / Download: 9)
combatti per migliorare, mai per distruggere. la vita è come uno specchio, sorridi e ti sorriderà
Cita messaggio
Grazie da:
#8
Alessandro secondo me è meglio se spieghi cosa vuoi ottenere...
Correggere un foglio di calcolo senza sapere a che serve e che risultato deve produrre è dura
Cita messaggio
Grazie da:
#9
Usi due cifre decimali (ok, giusto perchè la moneta è così), poi fai un confronto con lo 0,001 (tre cifre); tu nelle celle hai impostato due cifre decimali per cui ti darà sempre l'approssimazione a due cifre.
Infatti se per prova metti 5 cifre decimali, vedrai che ti fa vedere anche quando è minore di 0,001.

Un'altra cosa: come copi i dati? Utilizzi il tasto destra -> incolla soltanto -> Numero?

Hai detto che prima funzionava tutto: ma nel frattempo cosa è successo? Hai modificato qualcosa del tuo file? Hanno cambiato qualcosa nell'impaginazione dell'estratto conto?

_______________________________________________________

Ho riguardato il file e forse ho capito cosa chiedi:
nella G9 dovrebbe scriverti OK, invece scrive Cifra mancante.
In effetti nella F9 a prima vista c'è scritto zero, ma in realtà non è così: infatti se tu selezioni la F9 e la copi in un'altra cella incollandolo come numero, non è zero ma esce -0,000000000000419220214098459.
Ma come ??? Mistero !!!
Ho riscritto i valori a mano per escludere eventuali cifre significative non viste, ho riscritto le formule, ma niente, non mette 0 preciso.
Eppure sono valori scritti a mano e non derivanti da formule, in cui ci può essere il problema delle cifre significative...
Mi tornava solo quando escludevo dal calcolo l'ultima riga.
Boh.
Cita messaggio
Grazie da:
#10
I dati vengono inseriti manualmente, in una colonna. A fianco c'è una seconda colonna il cui risultato è dato da una funzione che se, nella descrizione, è un uscita/acquisto o entrata/versamento viene scritto -1 o +1 che moltiplicando la cifra inserita diventa positiva o negativa nella colonna finale (che è quella in questione)

L'unica cosa che ho fatto di diverso è che ho inserito una cifra fatta da una sottrazione, fatta con il copia incolla tasto destro>incolla.
Ho sempre utilizzato due cifre decimali, le 20 cifre del mio esempio erano solo per far vedere la differenza da 0
combatti per migliorare, mai per distruggere. la vita è come uno specchio, sorridi e ti sorriderà
Cita messaggio
Grazie da:


Vai al forum:


Utenti che stanno guardando questa discussione: 1 Ospite(i)