Frage von KingOff, 51

Wie runde ich eine Double Wert auf (BSP: von 5.0295 auf 5.03) JAVA?

Antwort
von Schachpapa, 15

Wenn du es nur für die Ausgabe brauchst, benutzt du am besten printf

System.out.printf("Ergebnis ist %7.2f",ergebnis)

Gibt die Fließkommazahl insgesamt 7 Zeichen breit bei 2 Nachkommastellen aus. Gerundet wird richtig, ggf wird hinten mit 0 aufgefüllt. Also 3.50 statt 3.5

Antwort
von Stunter, 31

Also, um auf Ganzzahlen zu runden, gibt es, glaube ich, auch in Java die Funktionen floor() (abrunden) bzw. roof() (aufrunden). Eventuell sind sie in der Math-Klasse.

Um auf bestimmte Nachkommastellen zu runden, weiß ich nicht, ob es in Java vorgefertigte Funktionen gibt. Eventuell musst du die Funktion selbst schreiben. Dabei kann ich dir helfen.

 ~ Stunter

Antwort
von user6363, 31

Ich glaub, es gab math.round, damit kannst du runden, wie genau das geht weiß ich nicht mehr, aber ich glaube es sah etwa so aus:

x = Math.round(x*1000)/1000.0;

Kommentar von Stunter ,

Math.round() gibt es meineswissens nicht. Ist schon eine Weile her, dass ich mit Java gearbeitet habe. Aber ich bilde mir ein, es gibt Math.floor() und Math.roof().

Kommentar von user6363 ,

Bin mir auch so gar nicht sicher, aber irgendwie sowas :/

Kommentar von Schachpapa ,

 Beatchens Methode funktioniert. Es rundet allerdings auf 3 Stellen. Für 2 Stellen Rechner man mit 100. das Ergebnis ist in diesem Fall gleich. 5,03 = 5,030. bei der Ausgabe mit print hat man in beiden Fällen 2 Nachkommastellen, also besser printf

Keine passende Antwort gefunden?

Fragen Sie die Community