Zehn Übungen zu Definition, Aufruf, Parametern und return — bis zur Zeile, die nie ausgeführt wird.
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; wenn du nicht weiterkommst, helfen die gestuften Tipps.
A1
Aufruf oder nicht?
AFB I
Nenne alle Zeilen, in denen eine Funktion aufgerufen wird.
Mehrere Antworten sind richtig. Markiere alle zutreffenden und klicke dann auf „Prüfen“.
Aufgerufen wird mit runden Klammern hinter dem Namen. function zeige() { legt nur an, zeigeMenue; ohne Klammern nennt die Funktion nur beim Namen.
Ansatz: Achte auf die Klammern.
Weiter: Das Schlüsselwort function kennzeichnet eine Definition.
A2
Stimmt's? — Funktionen
AFB I
Gib an, ob die Aussagen stimmen.
5 Aussagen nacheinander. Eine falsche Einschätzung reicht — dann startest du die Serie mit „Neue Runde“ neu.
Aussage 1 von 5
Definition = Rezept aufschreiben, Aufruf = nach dem Rezept kochen.
Ansatz: Wann läuft der Code einer Funktion?
Weiter: Wo gilt eine lokale Variable?
A3
Doppelt plus eins
AFB I
function doppelt(x) {
return x * 2;
}
console.log(doppelt(7) + 1);
Bestimme die Ausgabe.
Rechne selbst und trage das Ergebnis ein — Enter prüft direkt.
doppelt(7) liefert 14, dann 14 + 1 = 15.
Ansatz: Erst den Aufruf auswerten, dann weiterrechnen.
Weiter: Der Aufruf „ist“ nach return sein Ergebnis.
A4
Fachbegriffe
AFB II
Ordne jedem Begriff seine Bedeutung zu.
Klicke links einen Eintrag an und dann rechts den passenden — es entsteht eine Verbindungslinie. Mit der Tastatur: Enter zum Auswählen, ↑/↓ zum Wandern.
Beim Aufruf preis(4) wird das Argument 4 in den Parameter kopiert.
Ansatz: Denke an function f(x) und f(5).
Weiter: Welcher Begriff beschreibt einen Wert, welcher einen Namen?
A5
Rabatt berechnen
AFB II
function rabatt(preis, prozent) {
return preis - preis * prozent / 100;
}
Berechne die Rückgabewerte.
Löse die Kette Schritt für Schritt: Erst wenn ein Schritt stimmt, wird der nächste freigeschaltet. Enter prüft.
rabatt(80, 25):
rabatt(50, 10):
rabatt(rabatt(100, 10), 10):
Die innere Klammer zuerst: rabatt(100, 10) = 90, danach rabatt(90, 10) = 90 − 9 = 81. Zweimal 10 % sind also nicht 20 %.
Ansatz: Setze die Argumente der Reihe nach in die Parameter ein.
Weiter: Verschachtelte Aufrufe von innen nach außen auswerten.
A6
Geschwindigkeit als Funktion
AFB II
Die Funktion soll aus Metern und Sekunden die Geschwindigkeit in km/h liefern. Ergänze den Code — zwei 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.
kmh(, sekunden) { meter / sekunden * 3.6; }let v = (100, 20);
def ist Python. Mit console.log statt return hätte v den Wert undefined. v ist hier 18 (km/h).
Ansatz: Wie beginnt eine Funktionsdefinition in JavaScript?
Weiter: Ein Ergebnis, das gespeichert werden soll, wird zurückgegeben.
A7
Fehlersuche: Summe bis n
AFB IIMix
Das Programm soll 110 ausgeben. Analysiere es — zwei Zeilen sind falsch.
Klicke genau die fehlerhaften Zeilen an — die richtigen musst du stehen lassen.
Ohne Klammern wird die Funktion gar nicht ausgeführt. Und ohne return liefert ein Aufruf undefined — dann ergäbe undefined * 2 den Wert NaN.
Ansatz: Was „ist“ ein Aufruf, wenn die Funktion kein return hat?
Weiter: Wird die Funktion in Zeile 8 überhaupt ausgeführt?
A8
Was passiert wann?
AFB III
function gruss(name) {
return "Hi " + name;
}
let t = gruss("Ela");
console.log(t);
Stelle den Ablauf in der richtigen Reihenfolge dar.
Ziehe die Karten in die richtige Reihenfolge — mit der Tastatur: ↑/↓ verschiebt, Shift+↑/↓ wechselt nur den Fokus.
1Zeilen 1–3: Funktion wird angelegt — noch läuft nichts
2Zeile 4: Aufruf gruss("Ela")
3Parameter name bekommt den Wert "Ela"
4Zeile 2: return liefert "Hi Ela"
5t speichert "Hi Ela"
6Zeile 5: Ausgabe Hi Ela
Der Programmablauf springt beim Aufruf in die Funktion und mit return zurück an die Aufrufstelle.
Ansatz: Die Definition allein bewirkt nichts.
Weiter: Nach return geht es in Zeile 4 weiter.
A9
Volljährig?
AFB III
Die Funktion soll prüfen, ob jemand volljährig ist; das Programm gibt dann „Zutritt“ aus. Überprüfe den Code und korrigiere die fehlerhaften Zeilen.
Klicke die fehlerhaften Zeilen an — dann klappt ein Feld auf, in das du die richtige Zeile schreibst. Geprüft werden Auswahl und Korrekturen (Leerzeichen sind egal).
Richtige Zeile:
Richtige Zeile:
Die Funktion braucht den Parameter alter. Im if muss sie aufgerufen werden — istVolljaehrig ohne Klammern ist nur der Name und immer „wahr“.
Ansatz: Woher kennt die Funktion das Alter?
Weiter: Eine Funktion ohne Klammern wird nicht ausgeführt.
A10
Die stumme Zeile
AFB IIITrick
function f(x) {
return x + 1;
x = x * 100;
}
let a = f(4);
console.log(f(a));
Bestimme die Ausgabe.
Rechne selbst und trage das Ergebnis ein — Enter prüft direkt.
return beendet die Funktion sofort — x * 100 wird nie gerechnet. f(4) = 5, f(5) = 6.
Ansatz: Was passiert mit Zeilen nach return?
Weiter: Der zweite Aufruf bekommt das Ergebnis des ersten.