06++ added possibility to combine tickets

This commit is contained in:
Joel
2021-01-01 16:58:52 +01:00
parent 863b444e6c
commit 4d2b099bd1
+38 -28
View File
@@ -3,54 +3,64 @@
class Fahrkartenautomat class Fahrkartenautomat
{ {
public static double fahrkartenbestellungErfassen (){ public static double fahrkartenbestellungErfassen (){
//Preise
double preisEinzelfahrschein = 2.9;
double preisTageskarte = 8.6;
double preisKleingruppe = 23.5;
//=====================================
Scanner tastatur = new Scanner(System.in); Scanner tastatur = new Scanner(System.in);
double zuZahlenderBetrag = 0.0; double zuZahlenderBetrag = 0.0;
double einzelBetrag = 0.0;
byte anzahlTickets = 0; byte anzahlTickets = 0;
byte auswahlTicket = 0; byte auswahlTicket = 0;
System.out.println("Wählen Sie ihre Wunschfahrkarte für Berlin AB aus:\n" + boolean auswahl = true;
" Einzelfahrschein Regeltarif AB [2,90 EUR] (1)\n" + while (auswahl) {
" Tageskarte Regeltarif AB [8,60 EUR] (2)\n" + System.out.printf("\nWählen Sie ihre Wunschfahrkarte für Berlin AB aus:\n" +
" Kleingruppen-Tageskarte Regeltarif AB [23,50 EUR] (3)"); " Einzelfahrschein Regeltarif AB [%.2f EUR] (1)\n" +
" Tageskarte Regeltarif AB [%.2f EUR] (2)\n" +
while (true) { " Kleingruppen-Tageskarte Regeltarif AB [%.2f EUR] (3)\n" +
" Bezahlen (9)\n\n", preisEinzelfahrschein, preisTageskarte, preisKleingruppe);
System.out.print("Ihre Wahl: "); System.out.print("Ihre Wahl: ");
auswahlTicket = tastatur.nextByte(); auswahlTicket = tastatur.nextByte();
if (!(auswahlTicket > 0 && auswahlTicket < 3)) { einzelBetrag = 0.0;
System.out.println(" >>falsche Eingabe<<");
continue; switch(auswahlTicket) {
} case 1:
break; einzelBetrag = preisEinzelfahrschein;
} break;
case 2:
einzelBetrag = preisTageskarte;
break;
case 3:
einzelBetrag = preisKleingruppe;
break;
case 9:
auswahl = false;
break;
default:
System.out.println(" >>falsche Eingabe<<");
break;
}
switch(auswahlTicket) {
case 1:
zuZahlenderBetrag = 2.9;
break;
case 2:
zuZahlenderBetrag = 8.6;
break;
case 3:
zuZahlenderBetrag = 23.5;
break;
}
while (true) { while (auswahl) {
System.out.print("Anzahl der Tickets: "); System.out.print("Anzahl der Tickets: ");
anzahlTickets = tastatur.nextByte(); anzahlTickets = tastatur.nextByte();
if (!(anzahlTickets > 0 && anzahlTickets <= 10)) { if (!(anzahlTickets > 0 && anzahlTickets <= 10)) {
System.out.print("Es wurde ein ungültiger Wert für die Ticketanzahl eingegeben. \n" System.out.print("Es wurde ein ungültiger Wert für die Ticketanzahl eingegeben. \n"
+ "Bitte erneut versuchen.\n" + "Bitte erneut versuchen.\n");
+ "Anzahl der Tickets: ");
continue; continue;
} }
break; break;
} }
zuZahlenderBetrag = anzahlTickets * zuZahlenderBetrag; zuZahlenderBetrag += anzahlTickets * einzelBetrag;
}
return zuZahlenderBetrag; return zuZahlenderBetrag;
} }