Tablora · Bibliotheek
0.10 plus 0.20 met exacte decimalen controleren
Controleer met decimaal rekenen dat 0.10 plus 0.20 precies 0.30 geeft, zodat een opgegeven totaal zonder weergavefouten van drijvende komma wordt vergeleken.
Waarom 0.1 plus 0.2 fout kan lijken
Veel programma's slaan getallen op als binaire drijvendekommagetallen, waarin 0.1 en 0.2 geen exacte weergave hebben. Tel je ze op, dan ligt het opgeslagen resultaat een haar boven 0.3; afhankelijk van de opmaak zie je 0.30000000000000004 of een vergelijking die zegt dat de waarden niet gelijk zijn. Bij een afstemming lijkt zo'n artefact op een verschil dat er in werkelijkheid niet is.
De controle van de decimale som voorkomt dat. Ze leest elke waarde als decimale tekenreeks, brengt alle waarden op hetzelfde aantal decimalen en telt ze op als hele getallen, zodat 0.10 en 0.20 precies 0.30 opleveren.
De regels invoeren
- Typ of plak de bedragen in Eén waarde per regel. Lege regels worden genegeerd en spaties rond een waarde weggeknipt.
- Gebruik de canonieke decimale notatie: een optionele min vooraan, cijfers en een punt voor de decimalen. Groeperingskomma's, een decimale komma, een plusteken of een valutalabel worden geweigerd.
- Zet het bedrag dat je wilt controleren in Verwacht totaal, op dezelfde manier geschreven.
- Klik op Berekenen en bekijk Berekend totaal, Verwacht totaal, Verschil en Totalen komen overeen.
Resultaat voor 0.10 en 0.20
Met de waarden 0.10 en 0.20 en een Verwacht totaal van 0.30 bedraagt het Berekend totaal 0.30, het Verschil 0.00 en toont Totalen komen overeen Ja. Het resultaat houdt twee decimalen, omdat dat het grootste aantal decimalen onder de invoer en het verwachte totaal vormt.
Het Verschil luidt altijd Berekend totaal min Verwacht totaal, dus een negatief verschil betekent dat de ingevoerde regels onder het opgegeven bedrag blijven.
Waarden uit een echte tabel voorbereiden
Bedragen die je uit een afschrift kopieert, komen zelden in canonieke vorm binnen. Haal de kolom eerst door de normalisator, met het decimaalteken en het groeperingsteken die het document gebruikt, en kopieer daarna de omgezette waarden naar de controle. Een waarde die de normalisator ter controle vasthield, hoort nog niet in de som; los die eerst op voordat je het totaal vertrouwt.
De controle rekent exact met wat je invoert en met niets anders. Ze rekent geen valuta's om, past geen belasting- of afrondingsregels toe en vertelt je niet of elk record ingevoerd werd.
Invoer die de controle weigert
- 1,234.50 met een groeperingskomma, of 1234,50 met een decimale komma: zet die eerst om met de normalisator.
- +5.00 met een plusteken: voer 5.00 in.
- .50 zonder voorloopnul: voer 0.50 in.
- (2.50) tussen haakjes: voer -2.50 in.
- Elk van deze gevallen stopt de hele berekening met Controleer de ingevoerde waarden en probeer het opnieuw., dus een foute regel wordt nooit stilzwijgend overgeslagen.
Invoer
- Eén waarde per regel
- 0.10 0.20
- Verwacht totaal
- 0.30
Resultaten
- Berekend totaal
- 0.30
- Verschil
- 0.00
- Totalen komen overeen
- Ja