Python :: Aufgabe #224 :: Lösung #4
4 Lösungen

#224
Begleichung einer Rechnung ausschließlich mit Münzen
Anfänger - Python
von hollst
- 02.05.2019 um 15:46 Uhr
Angenommen, ihr hättet an der Kasse einen Betrag X zwischen (einschließlich) einem Cent und einem Euro zu bezahlen.
Schreibe ein Program, dass die Anzahl der Möglichkeiten berechnet, X ausschließlich mit 1, 2, 5 und 10 Cent-Münzen zu begleichen.
Beispiel: X = 5 Cent -> 4 Möglichkeiten (5; 2 + 2 + 1; 2 + 1 + 1+ 1; 1 + 1 + 1 + 1 + 1)
Achtung: für einen EURO (100 Cent) gibt es bereits 2.156 Möglichkeiten!
Viel Spaß!
Schreibe ein Program, dass die Anzahl der Möglichkeiten berechnet, X ausschließlich mit 1, 2, 5 und 10 Cent-Münzen zu begleichen.
Beispiel: X = 5 Cent -> 4 Möglichkeiten (5; 2 + 2 + 1; 2 + 1 + 1+ 1; 1 + 1 + 1 + 1 + 1)
Achtung: für einen EURO (100 Cent) gibt es bereits 2.156 Möglichkeiten!
Viel Spaß!
#4

von Moin (20 Punkte)
- 25.02.2020 um 20:26 Uhr

x = int(input("Welche Zahl soll gebildet werden?")) #Eingabe der Zahl, die gebildet werden soll a = [] #Die Liste, die darstellt, aus welchen Münzwerten wir x bilden i = 0 #Der Counter für die Anzahl der gefundenen Möglichkeiten for b in range(0,((x//10)+1)): #Wir gehen von Grund auf (also von 1 aufwärts bis 10) alle Möglichkeiten durch for c in range(0,((x//5)+1)): #Das +1 ist dazu da, eine range(0,0) zu verhindern für x<10; die Gleichheitsabfrage weiter unten verhindert zusätzliche Zählungen dadurch for d in range(0,((x//2)+1)): a.append(b*10) a.append(c*5) a.append(d*2) while sum(a) < x: a.append(1) if sum(a) == x: i += 1 a = [] print("Für die Zahl ", x , " gibt es ", i , " Möglichkeiten") input("Gern geschehen")
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1