Musterlösung: Geldwechselproblem

Diese Aufgabe zeigt, wie man mit Schleifen, ganzzahliger Division und Modulo-Operator arbeitet, um eine praktische Berechnung zu lösen: Einen Geldbetrag mit möglichst wenigen Münzen zu wechseln.

Erklärung der Lösung

Das Programm berechnet, wie viele Münzen benötigt werden, um einen bestimmten Betrag in Rappen zu wechseln. Es verwendet dazu eine for-Schleife, die nacheinander jede Münzsorte prüft – von der grössten zur kleinsten.

Schritt-für-Schritt-Erklärung

1. Betrag einlesen

betrag = int(input("Bitte gib einen Betrag in Rappen ein: "))

Die Eingabe wird als ganze Zahl gespeichert. Damit kann Python den Betrag korrekt berechnen und ganzzahlige Division anwenden.

2. Verfügbare Münzen definieren

muenzen = [200, 100, 50, 20, 10, 5, 2, 1]

Diese Liste enthält die Werte aller Schweizer Münzen in Rappen, sortiert von der grössten zur kleinsten. Das Programm durchläuft diese Liste Schritt für Schritt.

3. Berechnung der Münzen

rest = betrag
anzahl_muenzen = 0

Die Variable rest speichert den noch zu wechselnden Betrag. Die Variable anzahl_muenzen zählt alle verwendeten Münzen.

for m in muenzen:
    if rest >= m:
        anzahl = rest // m
        rest = rest % m
        anzahl_muenzen += anzahl
        print(f"{anzahl} Münze(n) à {m} Rappen")

- Mit // wird die Anzahl der Münzen berechnet, die in den Restbetrag passen. - Mit % wird der Restbetrag nach Abzug dieser Münzen bestimmt. - Die Anzahl wird ausgegeben und zum Gesamttotal addiert.

4. Total ausgeben

print(f"Total: {anzahl_muenzen} Münze(n)")

Am Ende zeigt das Programm die gesamte Anzahl benötigter Münzen an.

Komplette Musterlösung (Python)

Was du aus dieser Aufgabe lernst

  • Wie man Schleifen verwendet, um wiederholte Berechnungen durchzuführen.
  • Wie ganzzahlige Division (//) und Modulo (%) zusammenarbeiten.
  • Wie man Werte aus Listen systematisch verarbeitet.
  • Wie man mit klarer Logik schrittweise zu einem optimalen Ergebnis gelangt.
Zurück zur Aufgabe
Weiter zur nächsten Aufgabe