diff --git a/Fahrkartenautomat/.classpath b/Fahrkartenautomat/.classpath new file mode 100644 index 0000000..51a8bba --- /dev/null +++ b/Fahrkartenautomat/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/Fahrkartenautomat/.gitignore b/Fahrkartenautomat/.gitignore new file mode 100644 index 0000000..ae3c172 --- /dev/null +++ b/Fahrkartenautomat/.gitignore @@ -0,0 +1 @@ +/bin/ diff --git a/Fahrkartenautomat/.project b/Fahrkartenautomat/.project new file mode 100644 index 0000000..de7882b --- /dev/null +++ b/Fahrkartenautomat/.project @@ -0,0 +1,17 @@ + + + Fahrkartenautomat + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/Fahrkartenautomat/.settings/org.eclipse.jdt.core.prefs b/Fahrkartenautomat/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..3a21537 --- /dev/null +++ b/Fahrkartenautomat/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/Fahrkartenautomat/src/Fahrkartenautomat.java b/Fahrkartenautomat/src/Fahrkartenautomat.java new file mode 100644 index 0000000..5260fa7 --- /dev/null +++ b/Fahrkartenautomat/src/Fahrkartenautomat.java @@ -0,0 +1,87 @@ +import java.util.Scanner; + +class Fahrkartenautomat +{ + public static void main(String[] args) + { + Scanner tastatur = new Scanner(System.in); + + double zuZahlenderBetrag; + double eingezahlterGesamtbetrag; + double eingeworfeneMünze; + double rückgabebetrag; + + System.out.print("Zu zahlender Betrag (EURO): "); + zuZahlenderBetrag = tastatur.nextDouble(); + + // Geldeinwurf + // ----------- + eingezahlterGesamtbetrag = 0.0; + while(eingezahlterGesamtbetrag < zuZahlenderBetrag) + { + System.out.println("Noch zu zahlen: " + (zuZahlenderBetrag - eingezahlterGesamtbetrag)); + System.out.print("Eingabe (mind. 5Ct, höchstens 2 Euro): "); + eingeworfeneMünze = tastatur.nextDouble(); + eingezahlterGesamtbetrag += eingeworfeneMünze; + } + + // Fahrscheinausgabe + // ----------------- + System.out.println("\nFahrschein wird ausgegeben"); + for (int i = 0; i < 8; i++) + { + System.out.print("="); + try { + Thread.sleep(250); + } catch (InterruptedException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + System.out.println("\n\n"); + + // Rückgeldberechnung und -Ausgabe + // ------------------------------- + rückgabebetrag = eingezahlterGesamtbetrag - zuZahlenderBetrag; + if(rückgabebetrag > 0.0) + { + System.out.println("Der Rückgabebetrag in Höhe von " + rückgabebetrag + " EURO"); + System.out.println("wird in folgenden Münzen ausgezahlt:"); + + while(rückgabebetrag >= 2.0) // 2 EURO-Münzen + { + System.out.println("2 EURO"); + rückgabebetrag -= 2.0; + } + while(rückgabebetrag >= 1.0) // 1 EURO-Münzen + { + System.out.println("1 EURO"); + rückgabebetrag -= 1.0; + } + while(rückgabebetrag >= 0.5) // 50 CENT-Münzen + { + System.out.println("50 CENT"); + rückgabebetrag -= 0.5; + } + while(rückgabebetrag >= 0.2) // 20 CENT-Münzen + { + System.out.println("20 CENT"); + rückgabebetrag -= 0.2; + } + while(rückgabebetrag >= 0.1) // 10 CENT-Münzen + { + System.out.println("10 CENT"); + rückgabebetrag -= 0.1; + } + while(rückgabebetrag >= 0.05)// 5 CENT-Münzen + { + System.out.println("5 CENT"); + rückgabebetrag -= 0.05; + } + } + + System.out.println("\nVergessen Sie nicht, den Fahrschein\n"+ + "vor Fahrtantritt entwerten zu lassen!\n"+ + "Wir wünschen Ihnen eine gute Fahrt."); + } +} \ No newline at end of file