ERLEDIGT
NEIN
NEIN
ANTWORTEN
2
2
ZUGRIFFE
354
354
EMPFEHLEN
-
Hi,
kann mir mal kurz wer sagen wieso bei:
Code :1 2 3 4
double v1 = 2E-5; double v2 = 1E-6; double v3 = v1 / v2; System.out.println("-> " + v3);
Code :1
-> 20.000000000000004
anstatt 20.0 rauskommt?
-
30.06.10 13:06 #2
Ich glaube, das hängt damit zusammen:
Code :1 2 3 4 5 6
Schon einfache Dezimalzahlen, z. B. 0,1, können nicht mehr exakt als binäre Gleitkommazahlen dargestellt werden, da viele im Dezimalsystem abbrechende Kommazahlen im Binärsystem nicht abbrechende, periodische Zahlen sind; von diesen werden nur die ersten p Ziffern gespeichert, wodurch Ungenauigkeit entsteht. Dezimal 0,1 ist binär 0,0001100110011… Man kann aber zeigen, dass sich in einem binären Gleitkommasystem dennoch exakt 10 · 0,1 = 1 ergeben muss.
Auf jeden Fall sind Gleitkommazahlen nicht 100% genau. Runden kann man per Math.floor, Math.round und Math.ceil.Mein kleiner webstart Projektplaner:
http://178.77.101.236/ppws/
Ideen, Verbesserungsvorschläge, Bugsmeldungen und allg. Kritik erwünscht und erbeten.
Danke. :)
-
01.07.10 09:29 #3
- Registriert seit
- Aug 2005
- Ort
- Karlsruhe (Baden-Württemberg)
- Beiträge
- 905
Das liegt an der http://de.wikipedia.org/wiki/IEEE_754 Norm.
Kurz gesagt, auf Kosten der Genauigkeit wird größere bzw. niedrigere Zahlen dargestellt.
Wenn du daher wirklich eine genaue "Kommzahl" brauchst und du nicht einfach ein 64bit long oder 32bit int nehmen kannst (z.B. Würde ich bei Geldbeträgen auf Cent rechnen) dann brauchst du ein BigDecimal Object. Bei dem kann man einstellen, wie genau dieser sein soll.Wäre super wenn ihr euren Code in dieser Form einfügt:
[java]System.out.println("Hello World");[/java]Code java:1
System.out.println("Hello World");
Für erledigte Threads dürft ihr den "erledigt"-Button anklicken!
Über Dank freut sich jeder, der euch geholfen hat - ein Klick auf "Danke" kostet ja nicht mal was
Blog: http://javaeffective.wordpress.com/
Ähnliche Themen
-
css Grafik mit Rundung
Von spamerix im Forum CSSAntworten: 32Letzter Beitrag: 01.11.08, 12:13 -
Rundung
Von sight011 im Forum Cinema 4DAntworten: 2Letzter Beitrag: 24.07.08, 15:09 -
Rundung schneiden
Von gerd87 im Forum Cinema 4DAntworten: 1Letzter Beitrag: 20.01.07, 14:19 -
Ausgestanztes mit Rundung
Von UMAXDJ im Forum Cinema 4DAntworten: 17Letzter Beitrag: 29.03.05, 18:52 -
Rundung ist pixelig ?
Von Krusty-Ac im Forum PhotoshopAntworten: 11Letzter Beitrag: 18.02.05, 17:24





Zitieren
Login





