AB 7 Programmierung mit Python


Funktionen in Python


Eine Funktion ist ein Abschnitt von Code, der eine bestimmte Aufgabe erfüllt und wiederverwendet werden kann. Funktionen helfen dabei, den Code besser zu strukturieren und lesbarer zu machen, indem sie bestimmte Aufgaben klar abgrenzen.

Funktionen definieren und aufrufen

Eine Funktion wird mit dem Schlüsselwort def definiert, gefolgt von einem Namen und runden Klammern (). Der Codeblock der Funktion wird dann eingerückt.


Beispiel:
Die Funktion begruessung wird definiert und anschließend aufgerufen.

def begruessung():
    print("Hallo! Willkommen bei Python.")
    
begruessung()


Ausgabe:

Hallo! Willkommen bei Python.


Aufgabe 1
Definiere eine Funktion verabschiedung, die "Tschüss! Bis bald!" ausgibt, wenn sie aufgerufen wird. Rufe die Funktion auf.


Aufgabe 2
Erstelle eine Funktion motivations_spruch, die den Text "Heute ist ein großartiger Tag zum Programmieren!" ausgibt. Rufe die Funktion dreimal auf.

Funktionen mit einem Parameter


Mit Parametern können wir einer Funktion Werte übergeben, die diese dann für ihre Aufgabe nutzt.


Beispiel:
Die Funktion begruessung_person nimmt einen Namen als Parameter. Wenn wir begruessung_person("Jojo") aufrufen, verwendet die Funktion "Jojo" im Begrüßungstext und gibt den Text "Hallo, Jojo!" aus.

def begruessung_person(name):
    print("Hallo " + name + "!")
    
begruessung_person("Jojo")


Ausgabe:

Hallo Jojo!


Aufgabe 3
Definiere eine Funktion zeige_alter, die das Alter als Parameter entgegennimmt und den Text "Du bist [Alter] Jahre alt." ausgibt.


Aufgabe 4
Erstelle eine Funktion temperatur_meldung, die die aktuelle Temperatur als Parameter entgegennimmt und den Text "Es sind heute [Temperatur] Grad." ausgibt.


Funktionen mit mehreren Parametern


Funktionen können auch mehrere Parameter haben, um komplexere Berechnungen oder Aufgaben zu ermöglichen.


Beispiel 1:
Diese Funktion addiere_zahlen nimmt zwei Zahlen als Parameter entgegen und gibt ihre Summe aus.

def addiere_zahlen(a, b):
    print("Die Summe ist", a + b)
    
addiere_zahlen(3, 4)


Ausgabe 1:

Die Summe ist 7


Beispiel 2:
Diese Funktion nimmt den Namen einer Person und das Alter entgegen und gibt eine personalisierte Begrüßung aus.

def begruessung_mit_alter(name, alter):
    print("Hallo", name + ", du bist", alter, "Jahre alt.")
    
begruessung_mit_alter("Lisa", 30)


Ausgabe 2:

Hallo Lisa, du bist 30 Jahre alt.


Aufgabe 5
Erstelle eine Funktion person_info, die den Namen und das Alter einer Person entgegennimmt und "Name: [Name], Alter: [Alter]" ausgibt.


Aufgabe 6
Erstelle eine Funktion reise_info, die den Abfahrtsort und das Reiseziel entgegennimmt und den Text "Die Reise geht von [Abfahrtsort] nach [Reiseziel]." ausgibt.


Aufgabe 7
Schreibe eine Funktion reise_kosten, die die Anzahl der Kilometer und den Preis pro Kilometer entgegennimmt und die Gesamtkosten der Reise berechnet und ausgibt.


Funktionen mit Rückgabewert


Eine Funktion kann auch einen Rückgabewert haben, der das Ergebnis einer Berechnung an das Hauptprogramm zurückgibt. Dafür wird das Schlüsselwort return verwendet.


Beispiel:
Die Funktion verdopple verdoppelt eine Zahl und gibt das Ergebnis zurück.

def verdopple(x):
    return x * 2

ergebnis = verdopple(5)
print(ergebnis) 


Ausgabe:

10


Merke: Es reicht nicht, einfach die Funktion mit verdopple(5) aufzurufen. Die Funktion gibt einen Wert zurück. Um ihn auszugeben, musst du den print()-Befehl verwenden. Wenn du möchtest, dass die Funktion direkt die verdoppelte Zahl ausgibt, musst du sie ohne return definieren:

def verdopple(x):
    print(x * 2)


In diesem Abschnitt geht es jedoch darum, Funktionen mit Rückgabewerten zu definieren.


Aufgabe 8
Schreibe eine Funktion quadrat, die eine Zahl als Parameter entgegennimmt und das Quadrat der Zahl zurückgibt. Teste deinen Code, indem du das Ergebnis der Funktion für eine Zahl deiner Wahl ausgibst.


Aufgabe 9
Erstelle eine Funktion rechteck_flaeche, die die Länge und Breite eines Rechtecks als Parameter entgegennimmt und die Fläche des Rechtecks berechnet und zurückgibt. Teste deinen Code, mit verschiedenen Werten für Länge und Breite.


Aufgabe 10
Schreibe eine Funktion celsius_in_fahrenheit, die eine Temperatur in Celsius als Parameter entgegennimmt und diese in Fahrenheit umrechnet und zurückgibt.

Teste deinen Code wie folgt:

fahrenheit = celsius_in_fahrenheit(25)
print("Die Temperatur in Fahrenheit ist:", fahrenheit)


Formel: Fahrenheit = (Celsius * 9/5) + 32


Aufgabe 11
Schreibe eine Funktion berechne_bmi, die Gewicht (in kg) und Größe (in m) als Parameter entgegennimmt, den Body-Mass-Index (BMI) berechnet und zurückgibt.

Teste deinen Code wie folgt:

bmi = berechne_bmi(70, 1.75)
print("Dein BMI ist:", bmi)


Formel: BMI = Gewicht / (Größe * Größe)


Zusatzaufgabe 1
Schreibe eine Funktion namens summe(), die eine Zahl n als Eingabe nimmt und die Summe aller ganzen Zahlen von 1 bis n berechnet und zurückgibt. Beispiel: summe(5) sollte 15 ausgeben.

Tipp: Verwende eine Variable für die Summe, z.B. gesamt = 0, und eine for-Schleife, um von 1 bis n zu iterieren; addiere jede Zahl zu gesamt und gib gesamt am Ende zurück.


Zusatzaufgabe 2
Definiere eine Funktion namens tier_sound, die einen einzelnen Tiernamen (z.B., "Hund") entgegennimmt und den passenden Laut für dieses Tier zurückgibt. Gib "Wuff!" für "Hund", "Miau!" für "Katze" und "Muh!" für "Kuh" zurück. Wenn das Tier nicht bekannt ist, gib "Unbekanntes Tier" zurück.


Tipp: Verwende eine if-elif-else-Struktur, um den passenden Laut je nach Tier auszuwählen.