Tablora · Bibliotek
Kontrollera 0.10 plus 0.20 med exakta decimaler
Kontrollera att 0.10 plus 0.20 blir exakt 0.30 med decimalaritmetik, så att en angiven summa jämförs utan avvikelser från flyttalsvisning.
Varför 0.1 plus 0.2 kan se fel ut
Många program lagrar tal som binära flyttal, där 0.1 och 0.2 inte kan återges exakt. Lägger du ihop dem hamnar det lagrade resultatet en aning över 0.3; beroende på formateringen kan du se 0.30000000000000004 eller en jämförelse som säger att värdena inte är lika. I en avstämning ser en sådan effekt ut som en avvikelse som egentligen inte finns.
Summakontrollen undviker detta. Den läser varje värde som en decimalsträng, skalar alla värden till samma antal decimaler och adderar dem som heltal, så 0.10 och 0.20 blir tillsammans exakt 0.30.
Mata in raderna
- Skriv eller klistra in beloppen i Ett värde per rad. Tomma rader ignoreras och blanksteg runt ett värde tas bort.
- Använd kanonisk decimalform: ett valfritt inledande minus, siffror och en punkt före decimalerna. Grupperingskomman, decimalkomma, plustecken och valutabeteckningar avvisas.
- Skriv siffran du vill kontrollera i Förväntad summa, på samma sätt.
- Tryck på Beräkna och läs Beräknad summa, Förväntad summa, Skillnad och Summorna stämmer.
Resultat för 0.10 och 0.20
Med värdena 0.10 och 0.20 och en Förväntad summa på 0.30 blir Beräknad summa 0.30, Skillnad 0.00 och Summorna stämmer visar Ja. Resultatet har två decimaler eftersom det är det största antalet decimaler bland indata och den förväntade summan.
Skillnad är alltid Beräknad summa minus Förväntad summa, så en negativ skillnad betyder att de inmatade raderna inte når upp till den angivna siffran.
Förbered värden från en verklig tabell
Belopp som kopierats från ett kontoutdrag kommer sällan i kanonisk form. Kör först kolumnen genom normaliseringsverktyget med de decimal- och grupperingstecken som dokumentet använder, och kopiera sedan de konverterade värdena till summakontrollen. Ett värde som normaliseringsverktyget höll inne för granskning är inte redo att summeras; lös det innan du litar på summan.
Summakontrollen räknar exakt på det du matar in och inget mer. Den växlar inte valutor, tillämpar inga skatte- eller avrundningsregler och talar inte om för dig om alla poster har matats in.
Indata som avvisas
- 1,234.50 med grupperingskomma eller 1234,50 med decimalkomma: konvertera dem först med normaliseringsverktyget.
- +5.00 med plustecken: skriv 5.00.
- .50 utan inledande nolla: skriv 0.50.
- (2.50) inom parentes: skriv -2.50.
- Vilken som helst av dessa stoppar hela beräkningen med Kontrollera de angivna värdena och försök igen, så en felaktig rad hoppas aldrig över i tysthet.
Indata
- Ett värde per rad
- 0.10 0.20
- Förväntad summa
- 0.30
Resultat
- Beräknad summa
- 0.30
- Skillnad
- 0.00
- Summorna stämmer
- Ja