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

4 Lösungen Lösungen öffentlich
#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ß!
#4
vote_ok
von Moin (20 Punkte) - 25.02.2020 um 20:26 Uhr
Quellcode ausblenden Python-Code
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

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben