Hallo Leute. Da mir hier letztes mal schon so super geholfen wurde, würde ich gern wieder um Rat bitten. Ich wollte als abosluter Java neuling, mal ein kleines Programm schreiben, wo ich den Preis eines Produktes berechnen kann. Mit Rabatt, Skonto usw.
Hier erstmal der Quellcode:
import java.util.Scanner;
public class RabattBerechnen {
private static Scanner s;
public static void main(String[] args) { s = new Scanner(System.in);
int ja = 0; double p,r,m,vk,fr, fp,fsk,sk; {
System.out.print("Bitte geben Sie die Menge an: "); m = s.nextDouble(); System.out.print("Bitte geben Sie den Preis an: "); p = s.nextDouble(); System.out.print("Bitte geben Sie den Rabatt an: "); r = s.nextDouble(); System.out.println("Bekommen Sie Skonto? "); sk=s.nextDouble();{ fr = p*r/100; if (sk == ja){ fsk = fr*sk;} else fsk =fr; }
System.out.print("Bitte geben Sie die Versandkosten ein: "); vk = s.nextInt(); System.out.println("Der Endpreis wird berechnet..."); fr = p*r/100; fsk = fr*sk; fp = m*fsk+vk;
System.out.println("Der Preis inklusive Versandkosten beträgt "+fp);
}
} }
Ich kann Menge und Preis eingeben, danach kommt dieser Fehler:
Bitte geben Sie die Menge an: 5 Bitte geben Sie den Preis an: 4.26 Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Unknown Source) at java.util.Scanner.next(Unknown Source) at java.util.Scanner.nextDouble(Unknown Source) at RabattBerechnen.main(RabattBerechnen.java:18)
ich hatte auch s.nextInt(); probiert aber funktioniert genauso wenig. Könnte mir wer einen Tip geben warum er meckert? Fehler werden keine angezeigt in eclipse.
Vielen Dank schonmal!
edit: Wenn ich bei Preis eine glatte Zahl also zb. 5 eingebe geht es sogar weiter bis Rabatt. auch da kommt der Fehler nur wenn ich Kommazahlen verwende, aber spätestens dann bei der Skonto abfrage bekomme ich wieder den Fehler egal was ich da eingebe.
Frage
antenne
Hallo Leute. Da mir hier letztes mal schon so super geholfen wurde, würde ich gern wieder um Rat bitten. Ich wollte als abosluter Java neuling, mal ein kleines Programm schreiben, wo ich den Preis eines Produktes berechnen kann. Mit Rabatt, Skonto usw.
Hier erstmal der Quellcode:
import java.util.Scanner;
public class RabattBerechnen {
private static Scanner s;
public static void main(String[] args) {
s = new Scanner(System.in);
int ja = 0;
double p,r,m,vk,fr, fp,fsk,sk;
{
System.out.print("Bitte geben Sie die Menge an: ");
m = s.nextDouble();
System.out.print("Bitte geben Sie den Preis an: ");
p = s.nextDouble();
System.out.print("Bitte geben Sie den Rabatt an: ");
r = s.nextDouble();
System.out.println("Bekommen Sie Skonto? ");
sk=s.nextDouble();{
fr = p*r/100;
if (sk == ja){
fsk = fr*sk;}
else
fsk =fr;
}
System.out.print("Bitte geben Sie die Versandkosten ein: ");
vk = s.nextInt();
System.out.println("Der Endpreis wird berechnet...");
fr = p*r/100;
fsk = fr*sk;
fp = m*fsk+vk;
System.out.println("Der Preis inklusive Versandkosten beträgt "+fp);
}
}
}
Ich kann Menge und Preis eingeben, danach kommt dieser Fehler:
Bitte geben Sie die Menge an: 5
Bitte geben Sie den Preis an: 4.26
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextDouble(Unknown Source)
at RabattBerechnen.main(RabattBerechnen.java:18)
ich hatte auch s.nextInt(); probiert aber funktioniert genauso wenig. Könnte mir wer einen Tip geben warum er meckert? Fehler werden keine angezeigt in eclipse.
Vielen Dank schonmal!
edit: Wenn ich bei Preis eine glatte Zahl also zb. 5 eingebe geht es sogar weiter bis Rabatt. auch da kommt der Fehler nur wenn ich Kommazahlen verwende, aber spätestens dann bei der Skonto abfrage bekomme ich wieder den Fehler egal was ich da eingebe.
12 Antworten auf diese Frage
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.