Ich habe bisher immer mit globalen Variablen gearbeiten, was ja aber nicht gut ist. Das möchte ich jetzt ändern.
Jetzt habe ich aber ein Problem, wie ich Rückgabewerte von Funktionen.
Mir fällt es auch immer schwer beispiele aus dem Internet zu verstehen, weil ich nie so recht weiß, welches Wort nun eine Variable ist, die selbst ausgedacht ist, oder ob das Wort schon belegt ist, wie beispielsweise "print". Erschwerend kommt hinzu, dass vieles auf englisch geschrieben wird. Wäre es auf deutsch, dann könnte ich das ja rausfiltern, weil belegte "Wörter" halt auf englisch wären und der Rest auf deutsch.
Aber egal.
Hier habe ich mal ein kleines Beispiel geschrieben:
Code: Alles auswählen
def addieren(a,b):
c=a+b
return c
def subtrahieren(a,b):
c=a-b
return c
def multiplizieren(a,b):
c=a*b
return c
def dividieren(a,b):
c=a/b
return c
a=int(input("Bitte Zahl 1 eingeben: "))
b=int(input("Bitte Zahl 2 eingeben: "))
print("Was möchten Sie mit den Zahlen tun?")
print(" 1.addieren")
print(" 2.subtrahieren")
print(" 3.multiplizieren")
print(" 4.dividieren")
auswahl=int(input("Ihre Antwort: "))
if auswahl==1:
addieren(a,b)
print("Ergebnis: ",c)
elif auswahl==2:
subtrahieren(a,b)
print("Ergebnis: ",c)
elif auswahl==3:
multiplizieren(a,b)
print("Ergebnis: ",c)
elif auswahl==4:
dividieren(a,b)
print("Ergebnis: ",c)
Ok also weiter:
Der Funktion werden die Zahlen in a und b übergeben und in der Definition der Funktion habe ich auch definiert, dass ihr a und b übergeben werden muss.
Das verstehe ich auch.
In der Funktionen werden a und b verarbeitet und in c gespeichert.
Die Funktion gibt das Ergebnis in c wieder durch das "return" zurück.
Jetzt soll c ausgegeben werden, aber ich bekomme halt den Fehler, dass c nicht definiert wurde.
Hier ist eben mein Problem.
Die Funktion soll c zurückgeben, aber das passiert ja nicht.
Kann mir da jemand helfen und den Code entsprechen hier posten?
Vielen Dank für eure Hilfe!