Wenn (Befehl)

Wenn[ <Bedingung>, <Dann Objekt> ]

Erzeugt eine Kopie des Objekts, falls die Bedingung den Wahrheitswert true besitzt und erzeugt ein undefiniertes Objekt, falls der Wahrheitswert false ist.

  • Sei n = 3. Wenn[n==3, x + y = 4] erzeugt die Gerade x + y = 4, da die Bedinung für n erfüllt ist.

  • Sei n = 4. Wenn[n==3, x + y = 4] erzeugt ein 'undefiniertes Objekt, da die Bedingung für n nicht erffüllt ist.

Wenn[ <Bedingung>, <Dann Objekt>, <Sonst Objekt> ]

Erzeugt eine Kopie des ersten Objekts, falls die Bedingung den Wahrheitswert true besitzt und eine Kopie des zweiten Objekts falls der Wahrheitswert false ist. Beide Objekte müssen vom selben Typ sein!

  • Wenn[true, x + y = 4, x - y = 4] erzeugt die Gerade x + y = 4

  • Wenn[false, x + y = 4, x - y = 4] erzeugt die Gerade x - y = 4

Bedingte Funktionen

Sie können den Bool‘schen Befehl Wenn verwenden, um eine bedingte Funktion zu definieren. Bedingte Funktionen können auch als Argumente in Befehlen wie Ableitung, Integral und Schnittpunkt verwendet werden.

  • Die Eingabe f(x) = Wenn[x < 3, sin(x), x^2] erzeugt eine Funktion welche für x < 3 die Werte von \(sin(x)\) und für x ≥ 3 die Werte von \(x^2\) annimmt.

  • Die Eingabe f(x) = Wenn[0 <= x <= 3, sin(x)] erzeugt eine Funktion, welche für x zwischen 0 und 3 die Werte von \(x^3\) annimmt und für x ≥ 3 oder x ≤ 0 undefiniert ist.

Die Ableitung Wenn[Bedingung, f(x), g(x)] ergibt Wenn[Bedingung, f'(x), g'(x)]. An den kritischen Punkten werden Grenzwerte nicht berechnet.

Eine kürzere Schreibweise für das letzte Beispiel ist f(x) = sin(x), 0 <= x <= 3.

Symbole für logische Bedingungen (z. B. ≟, ˄, ≥) finden Sie im Abschnitt Wahrheitswerte.

Wenn-Befehl in Skripting

Wenn-Befehle können in Skripten verwendet werden um verschiedene Aktionen unter bestimmten Bedingungen durchzuführen.

Sei n eine Zahl und A ein Punkt. Der Befehl Wenn[Mod[n, 7] == 0, SetzeKoordinaten[A, n, 0], SetzeKoordinaten[A, n, 1]] verändert die Koordinaten des Punktes A bezüglich der gegebenen Bedingung. Als Alternative ist diese kürzere Schreibweise möglich SetzeKoordinaten[A, n, Wenn[Mod[n, 7] == 0,0,1]].

Die Argumente von Wenn müssen Objekte oder Skripting-Befehle sein, dürfen aber keine Zuweisungen sein. Die Eingabe b = Wenn[a > 1, 2, 3] ist richtig, aber b = 2 oder b = 3 werden als Parameter von Wenn nicht akzeptiert.