Modulo

Status
Nicht offen für weitere Antworten.

schihab

Mitglied
Hi

Hätte da nochmal eine frage. Habe folgende rechnung:

betrag=betrag%muenz[0];

wenn betrag = 0.6 ist und muenz[o] = 0.5 ist dann kommt bei betrag 0.09999999999998 raus. Anstatt 0.1. Wie kriege ich es hin das da 0.1 rauskommt?

Danke

Gruß

Schihab
 

Wildcard

Top Contributor
Computer rechnen üblicherweise binär. 0.1 lässt sich binär jedoch nicht mit endlich vielen Stellen ausdrücken.
 

Lexi

Bekanntes Mitglied
[HIGHLIGHT="Java"]
public static void main(String[] args)
{
double d = 0.1;
System.out.println(d);
}
[/HIGHLIGHT]
 

SchonWiederFred

Bekanntes Mitglied
Die Zahl 0,1 kann man in double nicht speichern.
Das folgende Programm zeigt Dir den echten, ungerundeten Wert an:
Code:
double schein = 0.1;
BigDecimal echt = new BigDecimal(schein);
System.out.println("Die beste Näherung an 0.1 ist " + echt);
Ausgabe:
Code:
Die beste Näherung an 0.1 ist 0.1000000000000000055511151231257827021181583404541015625
Du scheinst ja mit Geldbeträgen zu rechnen.
Die saubere Lösung ist, CENT statt EURO zu speichern, also zum Beispiel 60 statt 0.6 dann sollte es funktionieren.
 

Marco13

Top Contributor
SchonWiederFred hat recht. Und noch etwas allgemeiner: Modulo (%) bei float/double ist ziemlich grenzwertig... es gibt nur wenige Fälle, bei denen ich mir vorstellen könnte, dass das überhaupt Sinn macht...
 

0x7F800000

Top Contributor
Wenn's doch um Münzen geht, dann rechne doch einfach alles in die kleinste atomare einheit um: in Cents. Dann hast du nur ganze integer-zahlen, dann rechnet er auch + - * % exakt, und nicht wie bei double... :autsch:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
R Rechenoperationen mit Modulo Java Basics - Anfänger-Themen 2
B Modulo-Operator anhand eines Beispieles erklären Java Basics - Anfänger-Themen 7
s.marcii Modulo in der Variable einsetzen - ist das möglich? Java Basics - Anfänger-Themen 2
A Modulo operation Java Basics - Anfänger-Themen 5
A Char und modulo Java Basics - Anfänger-Themen 8
C Verständnisfrage zu Modulo Java Basics - Anfänger-Themen 6
T Modulo / Pow berechnen Java Basics - Anfänger-Themen 4
F Switch Case Modulo berechnen Java Basics - Anfänger-Themen 12
krgewb Best Practice Modulo Java Basics - Anfänger-Themen 4
L Rekursion Modulo Java Basics - Anfänger-Themen 7
W Input/Output Modulo Wert speichern und ausgeben lassen Java Basics - Anfänger-Themen 3
S Operatoren Modulo programmieren Java Basics - Anfänger-Themen 10
V Andere Schreibweise für % Modulo Java Basics - Anfänger-Themen 9
N Methoden Modulo Operator Java Basics - Anfänger-Themen 1
D Brauche Hilfe bei Modulo (Übungsaufgabe) Java Basics - Anfänger-Themen 14
L Modulo Reste abspeichern und wiedergeben ? Java Basics - Anfänger-Themen 4
Z 10er und 100er Stelle durch Modulo Java Basics - Anfänger-Themen 2
H Buch: Java lernen mit BlueJ Modulo-Operator Java Basics - Anfänger-Themen 16
J for-schleife + modulo Java Basics - Anfänger-Themen 2
E Problem mit modulo Rechnung Java Basics - Anfänger-Themen 8
S Modulo Operator Java Basics - Anfänger-Themen 8
R Merkwürdige Modulo Berechnung Java Basics - Anfänger-Themen 7
E Potenz mit Modulo (über for-Schleife) berechnen Java Basics - Anfänger-Themen 8
J modulo Java Basics - Anfänger-Themen 13
R Ersatz für Modulo Operator Java Basics - Anfänger-Themen 8
H Typ short: Exponent und Modulo Java Basics - Anfänger-Themen 3
W Modulo rechnen Java Basics - Anfänger-Themen 3
calzone Problem einer Gleichung mit Modulo Java Basics - Anfänger-Themen 5
A Problem mit modulo Java Basics - Anfänger-Themen 8
J statt modulo "if-Anweisung" Java Basics - Anfänger-Themen 9
J Modulo berechnen Java Basics - Anfänger-Themen 11
D BigInteger potenzieren und anschließend Modulo Java Basics - Anfänger-Themen 7
G SHA (byte array) per modulo hashen Java Basics - Anfänger-Themen 6
G Modulo Java Basics - Anfänger-Themen 4
J Modulo-Operator rechnet falsch Java Basics - Anfänger-Themen 2
Safado modulo rechnen Java Basics - Anfänger-Themen 5
S Modulo-Operator Java Basics - Anfänger-Themen 5
H Modulo rechnen Java Basics - Anfänger-Themen 17
G Modulo Division funzt nicht Java Basics - Anfänger-Themen 3
G BigInteger und Modulo Java Basics - Anfänger-Themen 3
B Modulo (%) und == Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben