| |
3. Variablen und ihre Werte
Für ganz elementare Rechnungen genügt es, wenn man Matlab
nur dazu benutzt die arithmetischen Operationen auszuführen,
etwa wenn man den Mittelwert von 3 Zahlen bestimmen will:
» 1.5+2.2+3.14
ans =
6.8400
» 6.8400/3
ans =
2.2800
|
Bei komplizierteren Rechnungen benötigt man jedoch eine Hilfe
um festzuhalten, welche Zahl welche Bedeutung hat. Man verwendet
dazu Namen, denen eine Zahl als Wert zugewiesen wird. Wenn
man zulässt, daß dieser Wert im Verlaufe der Rechnung
verändert werden kann und in Matlab ist immer das der Fall, nennt man
dieses Konstrukt eine Variable.
Die Zuweisung eines Wertes an eine Variable nennt man
Wertzuweisung, in Matlab wird die Wertzuweisung in der Form:
Variablenname = Variablenwert
angegeben, der Variablenwert kann dabei durch einen Ausdruck angegeben
werden.
» summe=1.5+2.2+3.14
summe =
6.8400
| » mittelwert=6.8/3
mittelwert =
2.2800
|
Ihre Bedeutung erhalten Variablen aber erst dadurch, daß der
Variablenname auch zur Bezeichnung des jeweiligen Variablenwertes
verwendet werden kann. Man spricht in diesem Zusammenhang davon,
daß der Variablenname dereferenziert wird.
Wann ein Variablenname für sich steht und wann er zur Bezeichnung
zugeordneten Wertes verwendet wird, geht jeweils aus dem Zusammenhang
hervor.
Die Dereferenzierung eines Variablennamens ist natürlich nur
dann möglich, wenn der Variablenwert definiert ist.
» summe=1.5+2.2
summe =
3.7000
» summe=summe+3.14
summe =
6.8400
| » (summe - mittelwert).^2
??? Undefined function or variable 'mittelwert'.
» mittelwert=summe/3
mittelwert =
2.2800
|
Wie schon angemerkt, gibt es in Matlab keine reservierten bzw. geschützten
Namen, es ist also möglich den Wert eines jeden Namens abzuändern.
Wenn sich das vermeiden lässt, sollte man dies tunlichst sein lassen.
Die voreingestellte Bedeutung eines Namen kann man mit der Anweisung:
wieder herstellen.
» sin = 3
sin =
3
» 2+sin(2)
??? Index exceeds matrix dimensions.
» 2+sin
ans =
5
» clear sin
» 2+sin(2)
ans =
2.9093
|
» 5*i
ans =
0 + 5.0000i
» i=3
i =
3
» 5i
ans =
0 + 5.0000i
» 5*i
ans =
15
|
Die letzten Beispiele zeigen den Unterschied zwischen dem Literal 5i und
dem Ausdruck 5*i.
Aufgabe 3.1:
Zu drei Zahlenwerten x1, x2, x3 der Form 100+rand(1), wobei die Matlabfunktion rand(1)
eine über (0,1) gleichverteilte Zufallszahl liefert, sollen berechnet werden:
- die Summe S
- die Summe QS1 der Quadrate dieser Werte
- der Mittelwert M
- die Summe QS2 der Werte (xi - M).^2
- der Wert von QS2/3
Es gibt verschiedene Wege auf denen diese Werte berechnet werden kö,nnen,
beurteilen Sie die Genauigkeit der jeweiligen Ergebnisse.
|