Bedingungsklammer erstellen? < Mathematica < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 20:47 Mi 12.12.2007 | Autor: | BenRen |
Hallo,
ich würde gerne in Mathematica das folgende eingeben:
[mm] f(n)=\begin{cases} 0, & \mbox{für } n \mbox{ gerade} \\ 1, & \mbox{für } n \mbox{ ungerade} \end{cases}
[/mm]
Oder auch mit anderen Bedingungen, z.B. "für x < 0" und "x >= 0" etc..
Aber ich weiß nicht, wie man diese große Klammer erstellt bzw. ich weiß gar nicht, ob Mathematica solch eine Bedingung überhaupt unterstützt (was ich mal stark vermute ;).
Danke für Eure Hilfe!
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 21:58 Mi 12.12.2007 | Autor: | Kiki3000 |
hm, also so kannste das nicht in mathematica eingeben. Aber mit ner If-Schleife solltest du das hinkriegen. Kommt jetzt halt drauf an, was du machen willst damit, nachher einfach die Funktionswerte ausrechnen?
Dann so:
f[n_]:=Module[{m,wert},
m=Mod[n,2];
If[m==0,wert=0,wert=1];
Return[wert]]
geht aber vielleicht auch kürzer?! Keine ahnung, programmier zur zeit zu viel mit mathematica ;)
Gruß Kiki
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 23:28 Mi 12.12.2007 | Autor: | BenRen |
Vielen Dank für Deine Antwort. Ich habe mir schon gedacht, dass man das irgendwie mit IF-Bedingungen machen müsste. Ich hatte eben gehofft, dass Mathematica solch eine Bedingungs-Schleife irgendwie verstehen kann.
Ich werde dann mal die Mathematica Doku wälzen um die IF Befehle zu erlernen.
Danke!
|
|
|
|
|
Hallo,
Kiki hat vollkommen Recht. Die Lösung funktioniert, es geht aber auch kürzer.
Man braucht das Ganze nicht in ein Modul zu packen. Es reicht zu schreiben:
f[x_] := If[Mod[x, 2]==0, 0, 1]
oder direkt:
f[x_]:=Mod[x,2]
Man kann es auch so machen:
f[x_?EvenQ]:=0
f[x_?OddQ]:=1
Oder man nimmt noch andere Konstrukte:
f[x_]:=Which[EvenQ[x],0,OddQ[x],1]
oder
f[x_] := Piecewise[{{0, EvenQ[x]}, {1, OddQ[x]}}]
oder auch:
p[x_] := 1 /; EvenQ[x]
p[x_] := 0 /; OddQ[x]
Ich wollte nur mal aufzählen, wie man dasselbe auf verschiedene Arten schreiben kann. Wie du es nun machst, ist deine Sache.
Übrigens steht in der Hilfe zu Piecewise, wie man zu der schönen Klammer kommt.
Gruß
Martin
|
|
|
|