Runden-auf-Cent-Rechner
Ergebnis
Gerundeter Wert
- Cent
- 268
Einen Geldbetrag auf den nächsten Cent runden heißt, ihn auf zwei Nachkommastellen zu kürzen, wobei Beträge, die genau auf einer halben Cent liegen, von der Null weg gerundet werden: aus 2,675 wird 2,68 und aus 0,005 wird 0,01. Das ist der letzte Schritt fast jeder Geldrechnung, denn ein Preis mal eine Menge oder ein Satz, der auf einen Zwischenbetrag angewendet wird, trifft fast nie genau eine ganze Centzahl. Richtig zu machen ist das schwerer, als es aussieht. Der geradlinige Weg multipliziert mit 100, rundet auf eine ganze Zahl und teilt zurück — und er versagt genau bei den Beträgen, um die es geht: 1,005 mal 100 ergibt 100,49999999999999 und nicht 100,5, also rundet die Zahl auf 1,00 ab und die letzte Cent verschwindet still. Den Wert stattdessen auf zwei Nachkommastellen auszugeben hat dasselbe Problem aus demselben Grund, denn es wird dieselbe etwas zu kleine Zahl angesehen. Keiner der beiden Fehler meldet sich. Die Ausgabe ist ein völlig gewöhnlich aussehender Betrag, und zu bemerken ist der Rundungsfehler nur, wenn man weiß, was hätte herauskommen müssen. Diese Seite vermeidet die Falle, indem sie das Komma im Text verschiebt statt zu multiplizieren; die Entscheidung fällt damit auf dem exakten Wert. Sie gibt den Betrag außerdem als ganze Centzahl aus, und das ist die Form, die man behalten will, wenn man damit weiterrechnen möchte. Das Ergebnis wird so geschrieben, wie Ihre Sprache Geld schreibt: Wer englisch liest, sieht denselben Betrag als 1,234.57, wer deutsch liest, als 1.234,57. Zwei Beträge, die sich nur in der letzten Cent unterscheiden, kommen als zwei verschiedene Zahlen zurück — und genau darum geht es.
Vier Beträge, die harmlos aussehen und in die falsche Richtung runden
| Betrag | Gerundet | Cent |
|---|---|---|
| 2.675 | 2.68 | 268 |
| 1.005 | 1.01 | 101 |
| 0.005 | 0.01 | 1 |
| -0.005 | -0.01 | -1 |
Jede Zeile ist ein Betrag, den eine geradlinige Umsetzung falsch hinbekommt, und jede scheitert aus ihrem eigenen Grund. 2.675 ist das Beispiel, das alle benutzen, und der eine Fall, in dem das Skalieren um hundert zufällig funktioniert, weil es genau auf 267,5 landet — also eine schlechte Probe und eine gute Warnung, denn wer nur diese Zeile prüft, findet den eigenen Code übereinstimmend und schließt, es gebe nichts zu reparieren. 1.005 ist der eigentliche Fehler: ein Hundertstel hat keine exakte Binärform, das Skalieren ergibt 100,49999999999999, und beide naheliegenden Methoden antworten 1,00. 0.005 ist genau eine halbe Cent und geht von der Null weg, was bei einem positiven Betrag dasselbe ist wie aufwärts. Und -0.005 ist derselbe Betrag mit Vorzeichen, wo die beiden Regeln auseinandergehen: eine negative Hälfte zur positiven Unendlichkeit zu runden ergibt eine negative Null, die als -0,00 gedruckt wird. Die dritte Spalte läuft daneben mit, damit jede Zeile auch die zwei Ansichten eines Betrags zeigt — links die Dezimalzahl, rechts die ganze Centzahl, berechnet aus dem gerundeten Betrag, damit die beiden einander nie widersprechen können. Die Zahlen gibt der Rechner unverändert aus: Der Dezimaltrenner ist in der Tabelle der Punkt (2.675 statt 2,675), weil die Zellwerte unverändert durchgereicht werden und nicht durch eine Textvorlage laufen.
Formel
2,675 → 2,68; 1,005 → 1,01; 0,005 → 0,01; −0,005 → −0,01; Cent = gerundet × 100
- Wert
- Der Betrag, der gerundet wird, von minus einer Milliarde bis plus einer Milliarde. Mehr als zwei Nachkommastellen sind absichtlich erlaubt: 1,005 und 2,675 sind genau die Fälle, für die es diese Seite gibt, und ein Feld, das sie abweist, würde die Fälle abweisen, für die es gebaut ist. Das Feld erzwingt keine zwei Nachkommastellen, und es soll das auch nicht — die Rundungsregel ist das Thema, nicht das Eingabeformat
- gerundet
- Der Betrag nach dem Runden auf zwei Nachkommastellen, und die erste Zeile des Ergebnisses. Er ist eine Zahl und kein Stück Text, und genau deshalb wird er mit dem Dezimaltrenner und der Tausendergruppierung Ihrer Sprache geschrieben: 1234.57 im Englischen, 1.234,57 im Deutschen. Dieser Unterschied zur allgemeinen Rundungsseite ist gewollt und der einzige bei gleicher Eingabe
- Cent
- Derselbe Betrag als ganze Centzahl, und das ist eine eigene Ausgabe statt einer zweiten Schreibweise der ersten. 268 ist eine ganze Zahl, mit der Sie addieren, aufteilen und zählen können; 2,68 ist eine Dezimalzahl, die in dem Moment wieder eine Gleitkommazahl wird, in dem Sie sie mit irgendetwas multiplizieren. Sie wird aus dem gerundeten Betrag berechnet und nicht aus dem ursprünglichen, deshalb können die beiden Zeilen einander nie widersprechen — 1,005 ergibt 1,01 neben 101, nie 1,01 neben 100
- kaufmännisches Runden
- Die Regel für Beträge, die genau auf einer halben Cent liegen, und sie heißt kaufmännisches Runden: 0,005 wird zu 0,01 und −0,005 wird zu −0,01. Aufrunden und Von-der-Null-weg-Runden stimmen bei positiven Beträgen überein und unterscheiden sich bei negativen, und dort zahlt sich die Unterscheidung aus — die naive Ganzzahlmethode liefert hier eine negative Null zurück, und −0,00 ist nichts, was man jemandem als geschuldeten Betrag zeigen sollte
- 1,005 × 100 = 100,49999999999999
- Der Fehler, um den diese Seite herum gebaut ist. Ein Hundertstel lässt sich binär nicht exakt speichern, also landet das Skalieren um hundert knapp unter dem Halbpunkt und die Rundung läuft in die falsche Richtung. Jede Methode, die zuerst multipliziert, ob sie die Zahl danach rundet oder sie auf zwei Nachkommastellen formatiert, erbt diesen Fehler und antwortet 1,00. Das Verschieben des Kommas im Text hält den Wert exakt, und es kommt 1,01 heraus
- −0,005 → −0,01
- Die negative halbe Cent, und der Fall, in dem die beiden Rundungsregeln auseinandergehen. Der Betrag liegt genau eine halbe Cent unter Null, und die Regel schickt ihn von der Null weg statt nach oben, also wird daraus −0,01 statt −0,00. Eine negative halbe Zahl zur positiven Unendlichkeit zu runden ergibt eine negative Null, die als −0,00 gedruckt wird und wie ein Rundungsfehler aussieht, obwohl die Rechnung in sich stimmig war
Jede Rechnung, die bei Geld endet, endet hier. Eine Rechnung, die auf mehrere Personen aufgeteilt wird, geht fast nie in ganzen Cent auf, und der Rest muss jemandem zugeteilt oder weggerundet werden; ein Steuersatz oder ein Trinkgeld auf einen Zwischenbetrag ergibt einen Betrag mit mehr Nachkommastellen, als Geld hat; und ein Stückpreis mal eine Menge tut dasselbe. Am Ende zu runden ist der naheliegende Schritt, aber der wichtigere ist das Runden in der Mitte. Ein Tilgungsplan berechnet die Zinsen jeder Periode auf dem Restsaldo und rundet die Zinsen jeder Periode auf den Cent, bevor er sie wieder addiert, denn nur am Ende zu runden lässt die Bruchteile auflaufen — über dreihundertsechzig Perioden ist diese Drift ganze Beträge, und der Endsald stimmt nicht mehr mit dem der Bank überein. Dieselbe Überlegung gilt überall dort, wo eine Summe aus gerundeten Teilen entsteht: erst die Teile runden, dann die gerundeten Teile addieren, nicht umgekehrt. Die Centzahl ist die Form, die man für diese Arbeit behält, denn sie ist eine ganze Zahl und bleibt durchweg exakt. Wo die Frage allgemein auf Nachkommastellen zielt und nicht auf Geld — eine Messung auf drei Nachkommastellen, ein Wert auf zwei signifikante Stellen —, deckt die Rundungsseite dreizehn verschiedene Ziele an einer Stelle ab; diese Seite deckt das eine Ziel ab, das Geld verwendet, und zwar mit einer Regel, die die Arithmetik nicht falsch hinbekommt.
Rechenbeispiele
Der voreingestellte Betrag: 2,675
- Der Betrag liegt zwischen 2,67 und 2,68, und er liegt genau in der Mitte
- Eine Hälfte geht von der Null weg, also lautet die Antwort 2,68 und nicht 2,67
- Den gerundeten Betrag mit 100 multiplizieren: 2,68 × 100 = 268
- Der Betrag ist damit 2,68, als ganze Cent geschrieben 268 Cent
Das Beispiel, zu dem alle greifen, und aus diesem Grund hier die Voreinstellung. Es ist außerdem der eine Fall, in dem die naive Methode zufällig das Richtige liefert, denn 2,675 mal 100 landet binär genau auf 267,5, während 1,005 das nicht tut — wäre dies also die einzige Probe auf der Seite, würde ein Leser, der sie gegen seinen eigenen Code prüft, feststellen, dass beide übereinstimmen, und daraus schließen, dass es kein Problem zu lösen gibt. Das nächste Beispiel zeigt den Unterschied, deshalb steht dieser Betrag oben auf dem Bildschirm und der andere darunter.
Der Betrag, der alle erwischt: 1,005
- Der Betrag liegt genau in der Mitte zwischen 1,00 und 1,01
- Eine Hälfte geht von der Null weg, also lautet die Antwort 1,01
- Das Skalieren um hundert ergibt 100,49999999999999 statt 100,5, weil ein Hundertstel keine exakte Binärform hat
- Eine Methode, die zuerst multipliziert, rundet deshalb ab und antwortet 1,00, und verliert eine Cent
- Das Verschieben des Kommas im Text hält den Wert exakt, also kommt 1,01 heraus
Das Beispiel, für das diese Seite existiert. Multiplizieren Sie es mit hundert, und Sie erhalten 100,49999999999999 — nicht zufällig ein Haar unter dem Halbpunkt, sondern weil 1,005 binär nicht exakt darstellbar ist und der gespeicherte Wert ein Haar darunter liegt. Beide naheliegenden Methoden erben diesen Fehler: die skalierte Zahl zu runden ergibt 1,00, und den Wert auf zwei Nachkommastellen zu formatieren ergibt ebenfalls 1,00, weil beide dieselbe etwas zu kleine Zahl ansehen. An der Ausgabe sieht nichts falsch aus. Eine Cent ist einfach weg, und zu bemerken ist das nur, wenn man weiß, was hätte herauskommen müssen. Genau auf solchen halben Centbeträgen landet die Geldrechnung, denn ein Satz auf einen ungeraden Preis erzeugt sie laufend.
Ein gewöhnlicher Betrag mit zu vielen Nachkommastellen: 1.234,5678
- Die ersten beiden Nachkommastellen sind 56, und was folgt, ist 78 — mehr als eine halbe Cent
- Also geht die zweite Nachkommastelle hoch: 1.234,57
- Mit 100 multiplizieren: 1.234,57 × 100 = 123.457
- Ausgeschrieben sind das 1.234,57, als ganze Cent 123.457 Cent
Der unspektakuläre Fall, und ein Beispiel wert, damit die Seite nicht nur aus Fallen besteht. Es passiert nichts Kniffliges: die dritte Nachkommastelle ist 7, also rundet der Betrag auf gewöhnlichem Weg auf, und beide Methoden stimmen überein. Was dieser Fall zeigt, ist die Formatierung, und die ist der Unterschied, den ein Leser zuerst bemerkt. Im Englischen kommt der Betrag als 1,234.57 zurück, mit einem Komma zwischen den Tausenderstellen und einem Punkt vor den Cent; im Deutschen kommt er als 1.234,57 zurück, mit vertauschten Rollen; im Französischen kommt er mit einem Leerzeichen dort zurück, wo das Komma stand. Die Ziffern sind identisch und die Seite rührt sie nicht an — was sich ändert, ist die Art, wie Ihre Sprache Geld schreibt, und diese Seite folgt ihr, während die allgemeine Rundungsseite das bewusst nicht tut.
Eine halbe Cent unter Null: −0,005
- Der Betrag liegt genau in der Mitte zwischen Null und minus einer Cent
- Eine Hälfte geht von der Null weg, was hier nach unten bedeutet: −0,01
- Mal 100 ergibt genau −0,5, dieser Fall skaliert also sauber
- −0,5 auf die naive Weise auf eine ganze Zahl zu runden ergibt eine negative Null, die als −0,00 gedruckt wird
- Das Verschieben des Kommas im Text ergibt −1 Cent und als Betrag −0,01
Der Fall, der die beiden Rundungsregeln trennt. Bei positiven Beträgen stimmen das Aufrunden der Hälfte und das Runden der Hälfte von der Null weg überein, die Unterscheidung sieht also wie Haarspalterei aus. Hier gehen sie auseinander: −0,5 aufzurunden ergibt eine Null mit angehängtem Minuszeichen, und ein Betrag von negativen Null Cent ist nichts, was man jemandem zeigen sollte. Dieser Fall skaliert außerdem sauber, denn −0,005 mal 100 ist genau −0,5 — der Binärfehler ist nicht symmetrisch zum Vorzeichen, weshalb eine Sammlung von Testbeträgen auch negative braucht. Eine Erstattung, eine Gutschrift oder ein Rabatt, der den Betrag übersteigt, landet hier.
Einschränkungen
Der Betrag muss eine Zahl von minus einer Milliarde bis plus einer Milliarde sein, und das gerundete Ergebnis darf einen Schritt außerhalb dieses Bereichs liegen: 999.999.999,999 rundet auf genau eine Milliarde auf, und die Cent-Ausgabe ist dort hunderttausend Millionen. Die Ausgaben bleiben in dieser Größe exakt, weil eine so große ganze Centzahl noch in dem Bereich liegt, in dem ganze Zahlen exakt dargestellt werden. Die Rundungsregel ist das kaufmännische Runden, also von der Null weg, und es gibt keine Einstellung, sie zu ändern — eine Seite mit einem Regelumschalter müsste erklären, welche Regel die Gerichte in Ihrem Land anwenden, und das tut sie nicht. Negative Beträge werden von der Null weg gerundet und nicht aufgerundet, und die beiden unterscheiden sich genau bei den halben Cent. Die Seite führt keine Währung: Sie weiß, wie viele Cent ein Betrag ergibt, aber nicht, wie diese Cent heißen, deshalb ist die Ausgabe eine Zahl, und jedes Zeichen davor ergänzen Sie selbst. Sie rundet einen Betrag nach dem anderen und teilt keine Summe zwischen Personen auf, vergibt keine Reste und gleicht keinen Tilgungsplan ab. Die Referenztabelle weiter unten zeigt vier feste Beträge und folgt Ihrer Eingabe nicht, und ihre Zahlen werden ohne Lokalisierung ausgegeben: Dort steht 2.675 und -0.005 in jeder Sprache, obwohl das Ergebnisfeld darüber sehr wohl lokalisiert.
Häufige Fragen
- Warum wird 1,005 auf 1,01 gerundet und nicht auf 1,00?
- Weil der Wert genau zwischen 1,00 und 1,01 in der Mitte liegt und die Regel für die Hälfte den Betrag von der Null weg schickt. Die Antwort sieht nur deshalb nach der überraschenden aus, weil die naheliegenden Umsetzungen 1,00 zurückgeben. Multiplizieren Sie 1,005 mit hundert, und Sie erhalten 100,49999999999999 und nicht 100,5 — ein Hundertstel lässt sich binär nicht exakt speichern, und der gespeicherte Wert liegt ein Haar unter dem echten. Eine Methode, die zuerst skaliert, sieht also einen Wert knapp unter dem Halbpunkt und rundet ab, ob sie die Zahl danach rundet oder sie auf zwei Nachkommastellen formatiert. Die Cent verschwindet nicht laut; die Ausgabe ist ein gewöhnlich aussehender Betrag, und der Rundungsfehler meldet sich nirgends. Diese eine Eingabe ist der Grund, warum es hier eine Seite gibt und nicht eine einzeilige Formel.
- Wird die Hälfte aufgerundet oder auf die gerade Nachbarzahl gerundet?
- Von der Null weg — bei positiven Beträgen aufwärts, bei negativen abwärts. Das ist das kaufmännische Runden, und genau das meint man, wenn man einen Preis rundet: aus 2,5 Cent wird 3, aus −2,5 Cent wird −3. Das Runden auf die gerade Nachbarzahl ist die andere verbreitete Regel, und sie existiert, damit lange Zahlenkolonnen beim Addieren nicht nach oben wegdriften; in der Statistik und in mancher Buchhaltung spielt sie eine Rolle, und diese Seite macht es nicht. Die beiden Regeln stimmen bei jedem Betrag überein außer bei den exakten Hälften, weshalb der Unterschied leicht zu übersehen ist, bis eine Auszahlung auf einer landet. Einen Umschalter gibt es nicht, denn ein Umschalter müsste erklären, welche Regel für welche Rechtsordnung gilt.
- Warum wird die Centzahl zusätzlich zum Betrag ausgegeben?
- Weil die beiden für Verschiedenes nützlich sind und die ganze Zahl diejenige ist, die exakt bleibt. Zweihundertachtundsechzig ist eine ganze Zahl: Sie können sie zu anderen ganzen Cent addieren, zwischen Personen aufteilen, mit einer Menge multiplizieren und weiterrechnen, ohne dass ihr etwas passiert. Zwei Komma sechs acht ist eine Dezimalzahl, und in dem Moment, in dem Sie sie mit etwas multiplizieren, wird sie wieder eine Gleitkommazahl mit genau dem Darstellungsproblem, das Sie hier vermeiden wollten. Deshalb werden die Cent auch aus dem bereits gerundeten Betrag berechnet und nicht aus der ursprünglichen Eingabe — würden sie getrennt berechnet, könnte eine Eingabe wie 1,005 in einer Zeile 1,01 und in der nächsten 100 ausgeben, und zwei Zahlen auf demselben Feld, die einander widersprechen, sind schlimmer als jede von beiden leicht daneben.
- Warum steht im Ergebnis in manchen Sprachen ein Komma?
- Weil Geld so geschrieben wird, wie die Sprache des Lesers es schreibt, und das ist nicht überall gleich. Das Englische setzt einen Punkt vor die Cent und Kommas zwischen die Tausender, der Betrag kommt also als 1,234.57 heraus. Das Deutsche und der größte Teil Kontinentaleuropas machen es umgekehrt: 1.234,57. Das Französische setzt ein Leerzeichen dorthin, wo das Komma stand: 1 234,57. Die Seite gibt den Betrag als Zahl aus und nicht als Stück Text, deshalb folgt die Formatierung der Sprache, in der Sie lesen. Die allgemeine Rundungsseite auf dieser Website macht das bewusst nicht — ihr Ergebnis ist Text mit festem Punkt und ohne Gruppierung —, und das ist die einzige Stelle, an der die beiden Seiten bei gleicher Eingabe wirklich auseinandergehen.
- Wo spielt das Runden auf den Cent wirklich eine Rolle?
- Überall dort, wo eine Summe aus Teilen zusammengesetzt wird. Ein Tilgungsplan ist der klarste Fall: Die Zinsen jeder Periode werden auf dem Restsaldo berechnet, auf den Cent gerundet und wieder addiert, und nur einmal am Ende zu runden lässt die übrig gebliebenen Bruchteile auflaufen — über dreihundertsechzig Perioden ist diese Drift ganze Beträge, und der Endsald stimmt nicht mehr mit dem der Bank überein. Eine Rechnung aufzuteilen hat dieselbe Form, denn eine Summe, die auf mehrere Personen verteilt wird, geht selten in ganzen Cent auf, und die ungerade Cent muss irgendwohin. Und jeder Satz, der auf einen Betrag angewendet wird — Steuer, Trinkgeld, Rabatt —, erzeugt mehr Nachkommastellen, als Geld hat. Die Regel zum Mitnehmen lautet: erst die Teile runden, dann die gerundeten Teile addieren, nicht umgekehrt.
- Welches ist der größte Betrag, den die Seite annimmt?
- Eine Milliarde, in beide Richtungen, und die gerundete Antwort darf einen Schritt außerhalb liegen — 999.999.999,999 rundet auf genau eine Milliarde auf, und die Cent-Ausgabe ist dort hunderttausend Millionen. Die Ausgaben bleiben in dieser Größe exakt, weil eine so große ganze Centzahl noch in dem Bereich liegt, in dem jede ganze Zahl exakt dargestellt wird; die Obergrenze liegt weit unter der Stelle, ab der ganze Zahlen anfangen, angenähert zu werden. Eingaben über der Grenze werden abgewiesen und nicht abgeschnitten, denn einen Betrag stillschweigend zu runden, den Sie nicht eingegeben haben, wäre eine schlechtere Antwort als ein Nein.
Quellen
- Rounding — from Wolfram MathWorld (English original; die Definition des Rundens, die Regel für die halbe Stelle und der Unterschied zwischen dem Aufrunden der Hälfte und dem Runden von der Null weg bei negativen Werten) — Wolfram MathWorld (United States)
- Decimal Expansion — from Wolfram MathWorld (English original; was eine Dezimalbruchentwicklung ist und warum eine Zahl wie 1,005 keine endliche Darstellung zur Basis 2 besitzt) — Wolfram MathWorld (United States)
- Dezimalbruch — Mathebibel: die deutschsprachige Darstellung der Dezimalbrüche, ihrer Stellen nach dem Komma und des Rundens auf eine feste Anzahl von Nachkommastellen, wie es im deutschen Unterricht geschrieben wird — Mathebibel (Deutschland)
- Ganze Zahlen — Mathebibel: die deutschsprachige Darstellung der ganzen Zahlen, ihrer Vorzeichen und der Rechenregeln, mit denen aus einem gerundeten Dezimalbetrag eine ganze Centzahl wird — Mathebibel (Deutschland)