Zahl auf 2 nachkomma stellen runden

hans-sonny

Bekanntes Mitglied
hi leute

ich habe zwei zahlen

double einkommensseteuer = 0,0;
double einkommen = 8005;

dann möchte ich rechnen und das ergebnis auf zwei nachkomma stellen runden


einkommenssteuer = (Math.round(((912.17 * einkommen + 1400.0) * einkommen)/0.01)*0.01);


und dann in einem jframe ausgeben


....

rechnung ausgabe alles okay

nur es runden nicht
 
> nur es runden nicht

wie stellst du das fest? was erhälst du als Ausgabe, wie sähe das deiner Meinung nach gerundet aus?
 
Java:
double f = 0.23531233;
String ausgabe= String.format("%.2f",f);
System.out.println(ausgabe);
 
damit hast du nicht alle meine Fragen beantwortet 😉
ich könnte jetzt einfach nur sagen, das ist gerundet, oder wieso deiner Meinung nach nicht?

damit es bisschen vorangeht versuche mal als Ausgabe auch

Java:
import java.text.DecimalFormat;
System.out.println(new DecimalFormat("0.00000").format(einkommenssteuer));

bzw. teste mit
[c]double einkommen = 85;[/c]
 
einkommen 85 geht nicht weil das ist unter der freigrenze da wird gleich was anderes gemacht

ja ich möchte halt eine vernünftige gleitkomma zahl^^

und ich gib aber nicht in die standardausgabe sondern in ein textfeld aus
 
also worauf ich hinaus wollte ist, dass 5.846308340425E10 so viele Ziffern hat, weil das 58 Milliarden 463 Millionen usw. sind 😉
da nützt das runden auf die zweite Nachkommastelle nicht viel, obwohl das hier auch funktioniert, die 25 am Ende sind die Cent,

deine Rechnung stimmt also nicht
 
Java:
double f = 0.23531233;
String ausgabe= String.format("%.2f",f);
textFeld.setText(ausgabe);
 
also worauf ich hinaus wollte ist, dass 5.846308340425E10 so viele Ziffern hat, weil das 58 Milliarden 463 Millionen usw. sind 😉
da nützt das runden auf die zweite Nachkommastelle nicht viel, obwohl das hier auch funktioniert, die 25 am Ende sind die Cent,

deine Rechnung stimmt also nicht
ja das glaube ich auch ^^

also ich hab folgende angabe:

die tarifliche einkommenssteuer bemisst sich nach dem zu versteuernden Einkommen. sie beträgt .. für zu versteuernde einkommen.

bis 8004€ = 0
von 8005 - 13469€ (912,17 * y + 1400) * y;

y ist ein Zehntausendstel des 8004€ übersteigenden Teils des auf einen vollen Euro-Betrag abgerundeten zu versteuernden Einkommens.
der sich ergebende steuerbetrag ist auf den nächsten vollen euro betrag abzurunden


also dass y != einkommen ist hab ich schon gecheckt^^ ... (das programm ist für meine freundin und die hat da schon bisschen was gemacht aber wohl eher schlecht als recht)

was würde y denn entsprechen?



würde das denn so stimmen:

Java:
   zuversteuern = (einkommen - 8004)/10000;
        einkommenssteuer = zuversteuern;
        einkommenssteuer = (Math.round(((912.17 * zuversteuern + 1400.0) * zuversteuern)/0.01)*0.01);
 
Zuletzt bearbeitet:
was ist y? y ist ein Zehntausendstel des 8004€ übersteigenden Teils des [..] Einkommens.

zu schwer? wie wärs mit z
z ist der 8004€ übersteigenden Teils des [..] Einkommens.

kannst du z ausrechnen? für einkommen = 10042 Euro?
 
so oder wie?

Java:
zuversteuern = (einkommen - 8004)/10000;
        einkommenssteuer = zuversteuern;
        einkommenssteuer = (Math.round(((912.17 * zuversteuern + 1400.0) * zuversteuern)/0.01)*0.01);
 
sieht für mich soweit richtig aus, abgesehen davon dass jetzt Teile wie "des auf einen vollen Euro-Betrag abgerundeten Einkommens" noch nicht unbedingt umgesetzt sind,
würde ich in jedem Fall mit irgendwelchen öffentlichen Tools abgleichen..

und die Rundung solltest du generell nicht in die Rechung einbauen:
einkommenssteuer = (912.17 * zuversteuern + 1400.0) * zuversteuern;
einkommenssteuer = rundeAufZweiStellen(einkommenssteuer);

mit einer entsprechenden Untermethode
 
ja könnte ich machen aber das will meine freundin nicht das hatten die in der schule noch nicht ... desswegen mal lieber nicht

also müsste ich den zu versteuernden betrag nicht auf zwei nachkomma stellen runden sondern auf eine gaze zahl oder?
aber wie kann ich abrunden?
 
z.B. 'java abrunden' in Suchmaschinen eintippen
oder auch die schon verwendete Math-Klasse nach weiteren Methoden durchschauen
 

Zurück
Oben