Javakurs/Übungsaufgaben/Kassenbon: Unterschied zwischen den Versionen
(→Kommentare) |
(→Kommentare) |
||
Zeile 37: | Zeile 37: | ||
Na mal schaun ob irgend jemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll. | Na mal schaun ob irgend jemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll. | ||
--> | --> | ||
+ | |||
+ | ==== Unknown User ==== | ||
hallo alle freitagsrunde Team, | hallo alle freitagsrunde Team, | ||
Zeile 42: | Zeile 44: | ||
ich wünsche Euch viel Erfolg und weiterso...:-) | ich wünsche Euch viel Erfolg und weiterso...:-) | ||
+ | |||
+ | |||
+ | ==== Robert ==== | ||
+ | |||
+ | Der Eine oder Andere hat darauf bestanden auf seinem Kassenbon keine Hundertstelpfennige ausgeben zu wollen. Diese entstehen mitunter dadurch, dass Doublewerte mit einer gewissen Toleranz gespeichert werden. | ||
+ | Hier ein Vorschlag für einen Workaround: | ||
+ | |||
+ | double kommazahl = 123.290402; | ||
+ | |||
+ | int ganzzahl = (int)kommazahl; // Nachkommastelle abschneiden | ||
+ | int kommastelle = (int)(kommazahl * 100)%10 ; // zwei Nachkommastellen extrahieren | ||
+ | |||
+ | System.out.println("Preis=" + ganzzahl + "." + kommastelle ); // Zahl in der Ausgabe zusammensetzen |
Version vom 10. April 2007, 13:26 Uhr
Inhaltsverzeichnis
Kassenbon
Es soll ein Programm geschrieben werden, dass einen Kassenbon auf der Konsole ausgibt. Am Anfang des Programmes werden in Form von Variablen folgende Werte festgelegt:
- Anzahl von mindestens vier verschiedenen Waren, die gekauft werden sollen.
- Einzelpreise der Waren. (Ja, jede Warensorte hat einen anderen Preis)
- Inhalt der Brieftasche.
Das Programm soll den Gesamtpreis der eingangs festgelegten Waren ermitteln. Übersteigt der Gesamtpreis den Inhalt der Brieftasche, wird der Benutzer auf den fehlenden Betrag hingewiesen. Reicht der Inhalt der Brieftasche für den Einkauf aus, wird ein Kassenbon ausgegeben, der die gekauften Waren mit Anzahl und Preis sowie am Ende den Gesamtpreis auflistet.
Hinweis: Erstellt zuerst die Ausgabe des Kassenbons und füllt sie anschließend mit Berechnungen und der Fallunterscheidung.
Kassenbon + automatischer Einkauf
Erstellt eine Kopie eures soeben geschriebenden Programmes. Verändert das Programm so, dass nun der Kassenbon solange mit Waren gefüllt wird, bis der Inhalt der Brieftasche für keine weiteren Einkäufe ausreicht. Betrachtet der Einfachheit halber mehrere Produkte eines Typs als einen Einkauf.
Hinweis: Viele, viele Fallunterscheidungen!
Kommentare
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)
Unknown User
hallo alle freitagsrunde Team,
diese lehrveranstaltung finde ich persönlich super megageil, aber ich wünsche,dass die Musterlösungen von solchen schweren Aufgaben im Netz gestellt werden.
ich wünsche Euch viel Erfolg und weiterso...:-)
Robert
Der Eine oder Andere hat darauf bestanden auf seinem Kassenbon keine Hundertstelpfennige ausgeben zu wollen. Diese entstehen mitunter dadurch, dass Doublewerte mit einer gewissen Toleranz gespeichert werden. Hier ein Vorschlag für einen Workaround:
double kommazahl = 123.290402; int ganzzahl = (int)kommazahl; // Nachkommastelle abschneiden int kommastelle = (int)(kommazahl * 100)%10 ; // zwei Nachkommastellen extrahieren System.out.println("Preis=" + ganzzahl + "." + kommastelle ); // Zahl in der Ausgabe zusammensetzen