Python :: Aufgabe #78 :: Lösung #5
6 Lösungen

#78
Das Briefmarkenproblem
Anfänger - Python
von ElPapito
- 07.05.2015 um 21:02 Uhr
Schreibe ein Programm, welches den Nutzer solange auffordert einen Betrag in Cent einzugeben, bis dieser größer oder gleich 20 und durch 5 teilbar ist. Dem Benutzer soll bei falscher Eingabe eine passende Fehlermeldung ausgegeben werden.
Dieser Betrag soll nun mit so wenig Briefmarken wie möglich ausgezahlt werden. Hierzu stehen allerdings nur 10 Cent und 25 Cent Briefmarken zur Verfügung.
Beispiele:
35 Cent = 1 * 25 Cent + 1 * 10 Cent
55 Cent = 1 * 25 Cent + 3 * 10 Cent
80 Cent = 2 * 25 Cent + 3 * 10 Cent
95 Cent = 3 * 25 Cent + 2 * 10 Cent
Dieser Betrag soll nun mit so wenig Briefmarken wie möglich ausgezahlt werden. Hierzu stehen allerdings nur 10 Cent und 25 Cent Briefmarken zur Verfügung.
Beispiele:
35 Cent = 1 * 25 Cent + 1 * 10 Cent
55 Cent = 1 * 25 Cent + 3 * 10 Cent
80 Cent = 2 * 25 Cent + 3 * 10 Cent
95 Cent = 3 * 25 Cent + 2 * 10 Cent
#5

von Y0uLyric (500 Punkte)
- 08.12.2016 um 12:26 Uhr

def eingabe(): global betrag t = 1 while t == 1: betrag = int(input("Tippen Sie einen Betrag ein, der größer/gleich 20 und durch 5 teilbar ist: ")) if betrag >= 20 and betrag % 5 == 0: t = 0 else: print("Der Betrag passt nicht") def auszahlen(betrag): global anzahl25 global anzahl10 anzahl25 = 0 anzahl10 = 0 mom_wert = 0 while mom_wert != betrag: if mom_wert + 10 <= betrag: if mom_wert + 35 > betrag: mom_wert += 10 anzahl10 += 1 else: mom_wert += 25 anzahl25 += 1 else: break def ausgabe(betrag, anzahl25, anzahl10): print(str(betrag) + " Cent= " + str(anzahl25) + " * 25 Cent + " + str(anzahl10) + " * 10 Cent") eingabe() auszahlen(betrag) ausgabe(betrag, anzahl25, anzahl10)
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1