Geldautomat

Aus ProgrammingWiki
Archivierte Version vom 2013-08-06T15:02:02+00:00. Aktuelle Version

Inhaltsverzeichnis

Die Aufgabe

Entwerfen Sie ein Programm, welches einen Geldautomaten simuliert. Sie werden nach Ihrem gewünschten Betrag befragt (max. 500 Euro!). Das Programm gibt die Geldscheine und Euro-Münzen aus.

Als Ergebnis eines Programmdurchlaufs erhalten Sie bei einem Betrag von 19 Euro z.B. die Ausschrift : "Sie erhalten 1 Zehn-Euro-Schein, 1 Fünf-Euro-Schein und 2 Zwei-Euro-Münzen".

Hilfs-Überlegungen

Wenn die Aufgabe mit bis zu 500 Euro zu schwer ist, dann fangen Sie doch erst einmal mit einem Maximalbetrag von 19 Euro an! Wie gibt man einen Betrag ein? Wie wird aus einer Eingabe eine Zahl, welche man prüfen kann? siehe Anlegen von Variablen, prompt(), parseInt() und parseFloat(). Wie kann man einen großen Betrag in eine Menge von vorgegebenen Geldscheinen aufteilen? Wie würden Sie das im Spiel Monopoly bewerkstelligen? Genau so geht das auch hier - nur soweit. Die große Summe wird reduziert um jeden Schein, welchen Sie auszahlen. Gehen Sie davon aus, dass Sie die Scheine nicht sofort auszahlen, sondern im Programm erst einmal ermitteln wie viele Scheine und Münzen Sie jeweils ausgeben müssen. Sie benötigen also auch ein paar Variablen zum Zählen!


Ein mögliches HTML-Gerüst für das Programm, welches Sie nutzen können.

Tipps

Ist es zu schwer?

  1. Fangen Sie erst einmal mit einem Programm an welches einen maximalen Betrag von 8 Euro auszahlt. Erhöhen Sie anschließend den Betrag auf 9 Euro, dann auf 19 Euro etc.
  2. Falls Ihr Programm wieder einmal gar nichts tut, dann haben Sie womöglich nicht oft genug getestet. Also: Alles komplett auskommentieren und zeilenweise wieder hinzufügen, solange bis der Fehler auftritt. Dann wissen Sie zumindest wo Sie suchen müssen!
  3. Haben Sie gemerkt, dass im Struktogramm der Vergleich > nicht zielführend ist? Was muss an dieser Stelle stehen?
  4. Haben Sie bei Vergleichen (falls diese in Ihrem Programm vorkommen) den Operator == verwendet anstelle des Zuweisungsoperators =?


Ist es zu einfach?

  1. Verwenden Sie weder die Funktion alert() noch document.write() für Ihre Ausgaben.
  2. Die Ausgabe hat im Ausgabefeld zu erfolgen!
  3. Zahlen Sie auch Kleingeld aus (50Cent, 20 Cent, ...)

Ergänzung

Programmieren Sie einen Fahrkartenautomaten!