Übungsaufgabe in Python Hilfe?

1 Antwort

Die Aufgabe besteht aus zwei Teilaufgaben. Eine Teilaufgabe ist die Überlegung eines Algorithmus, um zu einem Geldbetrag die minimale Anzahl an Scheinen und Münzen zu berechnen, um diesen zu erhalten. Überlege erst mal theoretisch, wie das gehen könnte und versuche dann eine Umsetzung davon.
Die Aufgabe würde ich in einer eigenen Funktion erledigen.

Die andere Teilaufgabe ist die Ein- und Ausgabe, wobei erstere deutlich umfangreicher ist. Schaue nach, wie man prüft, ob eine Datei vorhanden ist, und sie ggf. zeilenweise einliest. Schaue nach, wie man eine Eingabe von der Kommandozeile verarbeitet.

Dann rufst du die Funktion mit dem Euro-Betrag auf, die du dir zuvor überlegt hast, oder danach überlegen wirst. Die Aufgaben können weitgehend unabhängig voneinander bearbeitet werden.

Frage nach, was konkret unklar ist.


nmnk55 
Fragesteller
 27.11.2021, 13:24

ist das soweit so richtig:

                         #Scheine#

def findMin(Eur):

 

  Euro = [1, 2, 5, 10, 20, 50, 100,]

  S = len(Euro)

 

  ans = []

  i = S - 1

  while (i >= 0):

    #

    while (Eur >= Euro[i]):

      Eur -= Euro[i]

      ans.append(Euro[i])

    i -= 1

  #

  for i in range(len(ans)):

    print(ans[i], end=" ")

if __name__ == 'main':

  S = 94

  print("Ihr betrag In Scheinen: ",

     "$", S, "= ", end="")

  findMin(S)

                         #Munze#

  def findMin(Eur):

    Coins = [0.50, 0.20, 0.10, 0.05, 0.02, 0.01]

    m = len(Coins)

    ans = []

    i = m - 1

    while (i >= 0):

      while (Eur >= Coins[i]):

        Eur -= Coins[i]

        ans.append(Coins[i])

      i -= 1

    for i in range(len(ans)):

      print(ans[i], end=" ")

if __name__ == 'main':

  m = 0.94

  print("Ihr betrag in: ",

     "Cents", m, "= ", end="")

  findMin(S)

0
kmkcl  27.11.2021, 13:55
@nmnk55

Ansatz sieht - soweit ich das sehe - gut aus... Bei deiner zweiten Funktion ist aber die Liste der Münzen falsch rum... du gehst eigentlich davon aus, dass der letzte Eintrag der größte Wert ist.

Eine Funktion reicht ja aber aus... du musst ja in der Ausgabe nicht zwischen Münzen und Scheinen unterscheiden. Liste entsprechend anpassen...

PS: Nutze für Quelltexte zukünftig die Quelltext-Funktion... Das ist das </> Symbol bei Formatierung

0