Advertisement
OfficialSepptem

Untitled

Nov 16th, 2019
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.58 KB | None | 0 0
  1.  import java.util.Scanner;
  2.  
  3.  
  4. public class KartenAutomat {
  5.     private Scanner tastaturEingabe;
  6.     private int kartenpreis;
  7.     private int einbezahlterBetrag;
  8.     private int anzahlKarten;
  9.     private int gesamtpreis;
  10.     private int wechselgeld;
  11.  
  12.     // Konstruktor
  13.     public KartenAutomat() {
  14.         tastaturEingabe = new Scanner(System.in);
  15.         kartenpreis = 37;
  16.         kartenpreis2 = 20;
  17.         kartenpreis3 = 15;
  18.         hauptprogramm();
  19.     }
  20.  
  21.     public void zeigeMenu() {
  22.         einbezahlterBetrag = 0;
  23.  
  24.         System.out.println("Willkommen im Phantaseeland");
  25.         System.out.println("Eine Karte kostet " + kartenpreis + " €");
  26.     }
  27.     public void zeigeMenu() {
  28.         einbezahlterBetrag = 0;
  29.  
  30.         System.out.println("Eine Karte kostet " + kartenpreis2 + " €");
  31.     }
  32.  
  33.     public void berechneGesamtpreis() {
  34.         gesamtpreis = kartenpreis * anzahlKarten;
  35.         gesamtpreis = gesamtpreis + kartenpreis2 * anzahlKarten;
  36.         System.out.println("Sie müssen " + gesamtpreis + " € bezahlen");
  37.     }
  38.  
  39.     public void nimmGeldAn() {
  40.         // Der Benutzer wirft nacheinander Euro-Münzen oder Scheine ein
  41.         // bis genügend Geld eingeworfen wurde
  42.         while (einbezahlterBetrag < gesamtpreis) {
  43.             System.out.println("Es fehlen noch " +
  44.                 (gesamtpreis - einbezahlterBetrag) + " €.");
  45.             System.out.print("Welche Münze oder welchen Schein " +
  46.                 "werfen Sie ein? ");
  47.             int wert = tastaturEingabe.nextInt();
  48.            
  49.             // Wenn wert 5 ist oder wert gleich 10 ist...
  50.             if (wert == 1 || wert == 2 || wert == 5 || wert == 10 ||
  51.                 wert == 20 || wert == 50 || wert == 100) {
  52.                 einbezahlterBetrag = einbezahlterBetrag + wert;
  53.             } else {
  54.                 System.out.println("Sorry, kann " + wert + " € nicht annehmen");
  55.             }
  56.         }
  57.     }
  58.  
  59.     public void ermittleAnzahl() {
  60.         System.out.print("Wieviele Karten möchten Sie? ");
  61.         anzahlKarten = tastaturEingabe.nextInt();
  62.     }
  63.  
  64.     public void gibWechselgeld() {
  65.         int wechselgeld = einbezahlterBetrag - gesamtpreis;
  66.        
  67.         if (wechselgeld > 0) {
  68.             System.out.println("Sie bekommen noch " + wechselgeld
  69.                 + " € zurück.");
  70.                 while( wechselgeld > 1){
  71.                     while( wechselgeld > 2){
  72.                         while( wechselgeld > 5){
  73.                             while( wechselgeld > 10){
  74.                                 while( wechselgeld > 20){
  75.                                     while( wechselgeld > 50){
  76.                                         while( wechselgeld > 100){
  77.                 wechselgeld = wechselgeld - 100;
  78.                 System.out.print("100$");
  79.                 }
  80.                 wechselgeld = wechselgeld - 50;
  81.                 System.out.print("50$");
  82.                 }
  83.                 wechselgeld = wechselgeld - 20;
  84.                 System.out.print("20$");
  85.                 }
  86.                 wechselgeld = wechselgeld - 10;
  87.                 System.out.print("10$");
  88.                 }
  89.                 wechselgeld = wechselgeld - 5;
  90.                 System.out.print("5$");
  91.                 }
  92.                 wechselgeld = wechselgeld - 2;
  93.                 System.out.print("2$");
  94.                 }
  95.                 wechselgeld = wechselgeld - 1;
  96.                 System.out.print("1$");
  97.                 }
  98.             // TODO: Gib Wechselgeld in echten Scheinen/Münzen
  99.             // gestückelt zurück
  100.         }
  101.     }
  102.  
  103.     public void druckeKarte() {
  104.         System.out.println("#########################################");
  105.         System.out.println("# Eine Karte fürs Phantaseeland         #");
  106.         System.out.println("#########################################\n");
  107.         try { Thread.sleep(1000); } catch (Exception e) {}
  108.     }
  109.  
  110.     public void druckeKarten() {
  111.         // Solange wie noch nicht alle Karten gedruckt sind
  112.         // Drucke eine Karte
  113.         // Verringere die Anzahl noch zu druckender Karten um eins
  114.         int gedruckteKarten = 0;
  115.        
  116.         while (gedruckteKarten < anzahlKarten) {
  117.             druckeKarte();
  118.             gedruckteKarten = gedruckteKarten + 1;
  119.             System.out.println("Es wurden schon " + gedruckteKarten +
  120.             " von " + anzahlKarten + " Karten gedruckt");
  121.         }
  122.     }
  123.    
  124.     public void hauptprogramm() {
  125.         zeigeMenu();
  126.         ermittleAnzahl();
  127.         berechneGesamtpreis();
  128.         nimmGeldAn();
  129.         gibWechselgeld();
  130.         druckeKarten();
  131.     }
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement