====== Funktionen mit Parameter ====== Das sind Funktionen, denen man Informationen übermittelt, die dann von der Funktion verarbeitet werden und bei jedem Aufruf ein darauf aufbauendes Ergebnis liefern. Die Informationen, die die Funktionen erhalten, nennt man **Parameter**. Parameter sind Platzhalter für Werte, die jedes Mal anders sein können. Du gibst den Parameter bei der Definition einer Funktion hinter den Funktionsnamen in einem Klammerpaar an. def funktionsname(parameter): Anweisungen, die parameter verwenden Der Parametername ist frei wählbar, sollte aber seine Bedeutung wiederspiegeln. Bei der Verwendung der Funktion gibst du wieder in Klammern den Wert an, den der Parameter haben soll. funktionsname(123) Hier wird der Parameter in der ganzen Funktion durch 123 ersetzt. \\ Befehle können **mehrere Parameter** besitzen. Diese werden in der Parameterklammer getrennt mit Komma eingegeben. def befehlsname(parameter1, parameter2....): Anweisungen, die parameter1 und parameter2 verwenden Die Reihenfolge der Parameter in der Parameterklammer bei der Definition des Befehls muss mit der Reihenfolge der Werte beim Aufruf des Befehls übereinstimmen. \\ === Beispiel 1 === #Funktion mit Parametern def nutzer_gruessen(vorname, nachname): print("Herzlich willkommen,", vorname, nachname) #Funktionsaufruf nutzer_gruessen("Manfred", "Meyer") #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #Eingabeaufforderung zur Veranschaulichung eines weiteren Beispiels vornameEingabe = input("Bitte Vornamen eingeben: ") nachnameEingabe = input("Bitte Nachname eingeben: ") #Funktionsaufruf mit Variablen nutzer_gruessen(vornameEingabe, nachnameEingabe) === Beispiel 2 === #Funktionsdefinition def name_der_funktion(parametername_1): print(parametername_1) #Funktionsaufruf name_der_funktion("Python rocks!") === Beispiel 3 === #Funktionsdefinition def berechne_summe(parametername_1, parametername_2): summe = parametername_1 + parametername_2 print(summe) #Funktionsaufruf berechne_summe(145460, 256677) ====== Aufgaben ====== Versuche die Aufgaben mit Hilfe der Beispiele und der Arbeitsblätter zu lösen. ===== Aufgabe 1 - Rechteck ===== Defniere eine Funktion mit Parametern, die die Fläche eines Rechtecks berechnet. #Funktionsdefinition #??? #Funktionsaufruf flaeche_rechteck(3,7) >> Die Fläche des Rechtecks ist 21. ===== Aufgabe 2 - Turtlegrafik ===== Definiere eine Funktion viereck(seitenlaenge, farbe), mit der die Turtle ein Viereck mit einer bestimmten Seitenlänge und Farbe zeichnet. Du benötigst hierbei auch folgende Turtle-Funktionen: pencolor(Argument) & forward(Argument) ===== Aufgabe 3 - Turtlegrafik ===== Das folgende Programm zeichnet leider 3 gleich grosse Fünfecke, aber nicht wie gewünscht verschieden grosse. Warum nicht? Korrigiere es. import turtle as t def pentagon(sidelength, color): t.pencolor(color) for i in range (0,5): t.forward(90) t.left(72) pentagon(100, "red") t.left(120) pentagon(80, "green") t.left(120) pentagon(60, "violet") ===== Aufgabe 4 - Turtlegrafik ===== Du sagst der Turtle mit dem Befehl segment(), sich um eine bestimmte Strecke s vorwärts zu bewegen und sich um einen bestimmten Winkel w nach rechts zu drehen: import turtle as t def segment(s, w): t.forward(s) t.right(w) #??? Schreibe ein Programm, das diesen Befehl 92 mal mit s = 300 und w = 151 ausführt. ===== Aufgabe 5 - Portorechner ===== Das Porto von Drucksachen hängt vom Gewicht ab. Zur Portoberechnung soll eine **Funktion** definiert werden, die anhand des Gewichts der Drucksachen die Gewichtsklasse bestimmt, den Portobetrag berechnet und auf der Shell ausgibt. Für das Porto pro Drucksache soll folgende Staffelung gelten: * bis 50g --> 0,15 € * von 50g bis 100g --> 0,25€ * von 100g bis 250g --> 0,30€ * über 250g --> 0,60€ ===== Editor ===== {{url>https://trinket.io/embed/python/a7ecfe63eb}} ===== Hier geht es weiter... ===== [[informatik:computerkunst:funktionen-mit-rueckgabewert|Funktionen mit Rückgabewert]]