Netto Brutto Rechner mit 2% Rabatt in Java ignoriert den Rabatt?
Also ich habe die Aufgabe bekommen ein Programm, mithilfe von Java, zu schreiben mit dem man über die Tastatureingabe den Nettobetrag einliest und anschließend überprüft ob der Nettobetrag über 100€ liegt und den Bruttobetrag berechnet und ausgibt. Das Problem ist allerdings dass das Programm den Rabatt komplett ignoriert. Habe ich etwas bei der if-Verzweigung falsch gemacht?
package tegel;
import java.util.Scanner;
public class Strukto {
public static void main(String[] args) {
double netto;
double sabatt;
double brutto;
double bruttoende;
Scanner scan = new Scanner(System.in);
System.out.println("Geben Sie den Nettobetrag");
netto = scan.nextDouble();
brutto = netto;
sabatt = netto * (2/100);
if (netto < 100) {
brutto = netto - sabatt;
}
bruttoende = brutto / 1.19;
System.out.print("Bruttobetrag beträgt: " + brutto);
}
}
das ist Die KonsolenAusgabe
3 Antworten
Das
sabatt = netto * (2/100);
ist das Problem. Es gilt puntk vor strich, klammern gehen vor. Also zuerst 2/100. Da das aber in der schreibweise integer sind ist 2/100 = 0. Und damit ist der rabatt netto* 0 = 0.
Mach daraus
sabatt = netto * (2.0/100);
dann rechnet er da auch mit double und es sollte das korrekte rauskommen.
(das kleiner natürlich auch anpassen).
anschließend überprüft ob der Nettobetrag über 100€
netto < 100
Das passt nicht zusammen
< ist kleiner
> ist größer
habs ausversehen so geschrieben xD.
Bei Änderung des Größer/Kleinerzeichens und des Variablennamens in der Ausgabe am Ende funnktioniert es immernoch nicht. Das Programm berücksichtigt zwar die berechnung des Bruttobetrages aber den Rabatt will es immernoch nicht anerkennen xD
Sieh dir mal die letzte Zeile an, was du ausgibst.
Genau, so wie das Programm dort steht, ist es korrekt.
Was kommt raus, wenn du das Größer Zeichen umdreshst?
Oder
sabatt = netto * (2.00/100.00);
Damit geht's auch, damit du mit double Werten rechnest.
hab die Variable "bruttoende" erst später eingebunden und so vergessen sie in der Ausgabe unten auch abzuändern xD.
Bei Änderung des Größer/Kleinerzeichens und des Variablennamens in der Ausgabe am Ende funnktioniert es immernoch nicht. Das Programm berücksichtigt zwar die berechnung des Bruttobetrages aber den Rabatt will es immernoch nicht anerkennen xD