Zehn interaktive Übungen zu Funktionen mit Rückgabewert — von AFB I bis AFB III.
Dein Fortschritt:
0 / 0 Aufgaben
1
Übungsaufgaben
Zehn interaktive Übungen zum Klicken, Ziehen und Knobeln — von AFB I bis AFB III. Jede Übung gibt dir sofort Rückmeldung.
A1
Lückentext: Bausteine einer Funktion
AFB I
Setze die Begriffe ein — drei Wörter bleiben übrig.
Wort anklicken, dann Lücke anklicken (oder umgekehrt) — mit Tab und Enter geht es genauso. Ein Klick auf eine gefüllte Lücke legt das Wort zurück.
Eine Funktion wird mit definiert. Die Namen in den Klammern der Definition heißen . Mit gibt die Funktion einen Wert zurück und wird dabei sofort . Fehlt diese Anweisung, liefert die Funktion den Wert .
„print“ zeigt nur etwas an, gibt aber nichts zurück — eine Funktion ohne return liefert None, nicht 0.
A2
Korrekte Funktionsköpfe
AFB I
Welche Zeilen sind korrekte Funktionsköpfe?
Mehrere Antworten sind richtig. Markiere alle zutreffenden und klicke dann auf „Prüfen“.
def klein geschrieben, gültiger Name (nicht mit Ziffer beginnen), Parameter mit Komma getrennt, Doppelpunkt am Ende. Leere Klammern sind erlaubt.
A3
Begriffe-Memory
AFB I
Finde zu jedem Begriff die passende Stelle im Programm:
def kmh(ms): return ms * 3.6v = kmh(10)print(v)
Decke zwei Karten auf, die zusammengehören. Mit der Tastatur: Tab zur Karte, Enter aufdecken, Pfeiltasten zum Wandern.
Der Parameter ms ist ein Platzhalter; beim Aufruf kmh(10) bekommt er den Wert 10. Das Ergebnis 36.0 wird zurückgegeben und in v gespeichert.
A4
Ergebnis weiterverwenden
AFB II
Was gibt das Programm aus?
def f(x): return 2 * x + 1a = f(3)b = f(a)print(a + b)
Rechne selbst und trage das Ergebnis ein — Enter prüft direkt.
f(3) = 2 · 3 + 1 = 7, also a = 7. f(7) = 15, also b = 15. Ausgabe: 7 + 15 = 22.
A5
Stimmt's? — Fünferserie
AFB II
Fünf Behauptungen über Funktionen.
5 Aussagen nacheinander. Eine falsche Einschätzung reicht — dann startest du die Serie mit „Neue Runde“ neu.
Aussage 1 von 5
return beendet und liefert, lokale Variablen bleiben in der Funktion, Definition vor Aufruf.
A6
Trick: print statt return
AFB II
Was gibt das Programm aus? Trage beide Ausgabezeilen mit einem Leerzeichen getrennt ein.
Ziehe jede Karte in den passenden Korb — oder wähle sie mit Enter aus und drücke dann die Ziffer des Korbs (0 legt sie zurück).
1"Sturm"
2"stark"
3"mäßig"
4"schwach"
Die Zweige werden von oben geprüft, der erste wahre gewinnt. Genau an den Grenzen (75, 39, 12) greift wegen >= schon die höhere Stufe. Die letzte Zeile erreicht nur, wer unter 12 liegt.
A8
Schaltjahr-Programm ordnen
AFB III
Ein Jahr ist ein Schaltjahr, wenn es durch 4 teilbar ist — außer volle Jahrhunderte, die nur dann, wenn sie durch 400 teilbar sind (2000 ja, 1900 nein). Bringe die Zeilen in die richtige Reihenfolge.
Ziehe die Karten in die richtige Reihenfolge — mit der Tastatur: ↑/↓ verschiebt, Shift+↑/↓ wechselt nur den Fokus.
1def schaltjahr(j):
2 if j % 400 == 0:
3 return True
4 if j % 100 == 0:
5 return False
6 return j % 4 == 0
7jahr = int(input("Jahr: "))
8if schaltjahr(jahr):
9 print(jahr, "hat 366 Tage")
10else:
11 print(jahr, "hat 365 Tage")
Die Reihenfolge der Prüfungen ist entscheidend: Zuerst 400, dann 100 — sonst würde 2000 schon bei der 100-Regel mit False enden. Die Funktion muss vor dem Aufruf definiert sein.
A9
Fehlersuche: Mittelwert
AFB III
Das Programm soll den Mittelwert berechnen und zweimal verwenden. Richtig wäre die Ausgabe „über 10: 12.0“ und „12.0“. Drei Zeilen sind falsch.
Klicke genau die fehlerhaften Zeilen an.
print statt return, fehlender Doppelpunkt und eine lokale Variable, die außerhalb benutzt wird.
A10
Mix: Teiler zählen
AFB III
Die Funktion zählt, wie viele Teiler eine Zahl hat.
def teiler(n): anzahl = 0 for t in range(1, n + 1): if n % t == 0: anzahl = anzahl + 1 return anzahl
Rechne die Kette Schritt für Schritt: Erst wenn ein Schritt stimmt, wird der nächste freigeschaltet. Enter prüft.
Was liefert teiler(12)?
Was liefert teiler(13)?
Was liefert teiler(1)?
Für wie viele n von 1 bis 20 liefert teiler(n) genau 2?
12 hat die Teiler 1, 2, 3, 4, 6, 12. Zahlen mit genau zwei Teilern sind Primzahlen: 2, 3, 5, 7, 11, 13, 17, 19 — acht Stück. Die 1 hat nur einen Teiler und ist keine Primzahl.