#1 27. Oktober 2009 2 Nachkommastellen runden bei Java Sers leute ich hab ein problem ich soll alle Preise die ich ausgeben will das sind brutto , netto und mwst jeweils mit zwei nachkommastelle ausgeben Hier mein Code: public class Rabatte { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub double rabatt, brutto, netto, mwst, nettorund; int temp, temp1; java.util.Scanner Iscan = new java.util.Scanner(System.in); System.out.println("Bitte geben sie den Brutto betrag ein:"); brutto = Iscan.nextDouble(); if (brutto >= 100) rabatt = brutto * 0.25; else rabatt = 0; brutto -= rabatt; // ist das gleiche wie brutto= brutto-rabatt; System.out.println("Der Bruttopreis(Rabatt einberechnet) beträgt: " + brutto); netto = brutto * 0.81; System.out.println("Der Nettopreis beträgt: " + netto); mwst = brutto - netto; System.out.println("Die mwst beträgt: " + mwst); /* nettorund = ((netto * 100)+0.5); temp = (int)nettorund; temp1 = temp / 100 ; System.out.println(temp1); */ das letzte war ein versuch der aber nicht richtig klappt das was ausgeklammert ist... kann mir bitte jemand helfen und vllt bisi erklären danke BW DRINNE! + Multi-Zitat Zitieren
#2 27. Oktober 2009 AW: 2 Nachkommastellen runden bei Java Code: double d = 1,23456789; DecimalFormat df = new DecimalFormat("0.00"); String zahl = df.format(d); System.out.println("Mwst mit 2 Nachkommastellen: " + zahl); bitteschoen Für weitere infos schau dir in der api das hier an. Greetz Jojo + Multi-Zitat Zitieren
#3 27. Oktober 2009 AW: 2 Nachkommastellen runden bei Java Einfacher Trick: Math.Round(Variable*100)/100 + Multi-Zitat Zitieren
#4 27. Oktober 2009 AW: 2 Nachkommastellen runden bei Java Geht auch. Wobei wenn er die Zahl nur ausgeben muss, finde ich die Loesung über DecimalFormat schoener. Greetz + Multi-Zitat Zitieren
#5 27. Oktober 2009 AW: 2 Nachkommastellen runden bei Java schöner? länger, komplizierter, resourcenverschwendend wären die passenden Adjektive + Multi-Zitat Zitieren
#6 27. Oktober 2009 AW: 2 Nachkommastellen runden bei Java Ich finde die Lösung von jojo2502 eleganter. Die Klasse ist zum verwenden da und dein "einfacher Trick" mag für dich praktisch sein, aber wenn du im Team arbeitest kommt vielleicht nicht gleich jeder drauf was du damit bezwecken willst. Finde ich gleichzusetzen mit "Magic Numbers". Hier ist das Beispiel vielleicht zu trivial aber, ich finde den Stil nicht elegant. Zumal wie gesagt nicht auf den ersten Blick ersichtlich ist was du damit bezwecken willst. Dahingegen wird bei jojo2502 sofort klar was der Code macht. + Multi-Zitat Zitieren
#7 27. Oktober 2009 AW: 2 Nachkommastellen runden bei Java Naja ich programmiere in Java eigentlich nur aus Zwang, normalerweise mag ich solch einen voll objektorientierten Schrott nicht. Java ist sowieso schon sau langsam, dann sollte man wenigstens schauen, dass man nicht für jede noch so triviale Bearbeitung ein eigenes Objekt instanziert. Notfalls schreibt man noch //runden dazu und die sache ist erledigt. Aber wenn du ein Team hast, dass diese einfache math.round(x*100)/100 Code zeile nicht versteht, dann solltest du dir dringend bessere Programmierer anschaffen, sonst wird das Projekt nichts + Multi-Zitat Zitieren
#8 27. Oktober 2009 AW: 2 Nachkommastellen runden bei Java unterschrieben !!! damit es nicht ganz so offtopic wird: public static final double rundeAufZweiStellen(double wert) { return Math.Round(Variable*100)/100; } das sollten viele verstehen. + Multi-Zitat Zitieren