Nachdem ich stundenlang versucht hatte, einen Fehler in meiner persönlichen Buchhaltungstabelle herauszufinden, konnte ich ihn einer Formel zuordnen.
Während dies zu Null führt
=((0,6-0,3-0,4)+(-0,3+0,8-0,4))
Wenn ich es mit Zero vergleiche, bin ich falsch
=((0,6-0,3-0,4)+(-0,3+0,8-0,4))=0
Was zum Teufel vermisse ich?
google-sheets
Bruno
quelle
quelle
0 != 0
.Antworten:
Dank der Wunder der Floating-Point - Arithmetik ,
ergibt ungefähr -5.55e-17 in doppelter Genauigkeit. Dies gilt sowohl für JavaScript als auch für Google Spreadsheets. Es spielt keine Rolle, ob die Berechnung clientseitig oder serverseitig ist: Entscheidend ist das verwendete Zahlenformat. Es scheint, dass Google Sheets doppelte Genauigkeit verwendet .
Die Lösung ist dieselbe: Vermeiden Sie einen Gleichheitsvergleich für Gleitkommazahlen. In Ihrem Fall würde das Problem vermieden, wenn Sie die Einheiten ändern, indem Sie alles mit 10 multiplizieren.
quelle
=FLOOR(B3+C2, 0.01)
für die Arbeit mit Währung