diff --git a/Fahrkartenautomat/src/Fahrkartenautomat.java b/Fahrkartenautomat/src/Fahrkartenautomat.java index d5410f5..069a4c6 100644 --- a/Fahrkartenautomat/src/Fahrkartenautomat.java +++ b/Fahrkartenautomat/src/Fahrkartenautomat.java @@ -3,54 +3,64 @@ class Fahrkartenautomat { public static double fahrkartenbestellungErfassen (){ + //Preise + double preisEinzelfahrschein = 2.9; + double preisTageskarte = 8.6; + double preisKleingruppe = 23.5; + //===================================== + Scanner tastatur = new Scanner(System.in); double zuZahlenderBetrag = 0.0; + double einzelBetrag = 0.0; byte anzahlTickets = 0; byte auswahlTicket = 0; - System.out.println("Wählen Sie ihre Wunschfahrkarte für Berlin AB aus:\n" + - " Einzelfahrschein Regeltarif AB [2,90 EUR] (1)\n" + - " Tageskarte Regeltarif AB [8,60 EUR] (2)\n" + - " Kleingruppen-Tageskarte Regeltarif AB [23,50 EUR] (3)"); - - while (true) { + boolean auswahl = true; + while (auswahl) { + System.out.printf("\nWählen Sie ihre Wunschfahrkarte für Berlin AB aus:\n" + + " Einzelfahrschein Regeltarif AB [%.2f EUR] (1)\n" + + " Tageskarte Regeltarif AB [%.2f EUR] (2)\n" + + " Kleingruppen-Tageskarte Regeltarif AB [%.2f EUR] (3)\n" + + " Bezahlen (9)\n\n", preisEinzelfahrschein, preisTageskarte, preisKleingruppe); System.out.print("Ihre Wahl: "); auswahlTicket = tastatur.nextByte(); - if (!(auswahlTicket > 0 && auswahlTicket < 3)) { - System.out.println(" >>falsche Eingabe<<"); - continue; - } - break; - } + einzelBetrag = 0.0; + + switch(auswahlTicket) { + case 1: + 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: "); anzahlTickets = tastatur.nextByte(); if (!(anzahlTickets > 0 && anzahlTickets <= 10)) { System.out.print("Es wurde ein ungültiger Wert für die Ticketanzahl eingegeben. \n" - + "Bitte erneut versuchen.\n" - + "Anzahl der Tickets: "); + + "Bitte erneut versuchen.\n"); continue; } break; } - zuZahlenderBetrag = anzahlTickets * zuZahlenderBetrag; - + zuZahlenderBetrag += anzahlTickets * einzelBetrag; + } + return zuZahlenderBetrag; }