Matlab-Schleifen
Wir befassen uns nun mit zyklischen Strukturen in Matlab.
Was versteht man unter einer Schleifenstruktur? Eine Schleife ermöglicht das wiederholte Ausführen von Operationen. Hierbei wird ein und derselbe Befehlsblock mehrfach durchlaufen, wobei bei jeder Durchführung die Arbeitsvariablen angepasst werden. Jeder Durchlauf dieses Befehlsblocks wird als Iteration bezeichnet.
Matlab bietet drei primäre zyklische Strukturen: die for-Schleife, die while-Schleife und die do-until-Schleife.
For-Schleife
Wir beginnen mit der for-Schleife. Sie führt einen Anweisungsblock eine festgelegte Anzahl von Malen aus. Das geschieht so:
for Start:Ende
Anweisungsblock
end
Die for-Schleife ist also ein im Voraus festlegbarer Zyklus.
Die Anzahl der Durchführungen ist dabei von Beginn an bekannt. Hier ein Beispiel für eine for-Schleife:
for 1:9
disp(x);
end
Diese Schleife wird 9 Mal ausgeführt und gibt eine Zahlenfolge von 1 bis 9 aus.
1
2
3
4
5
6
7
8
9
Möchten Sie eine variable Anzahl von Iterationen realisieren, bieten sich die while- oder do-until-Schleife an.
Diese sind flexibler, da sie es Ihnen ermöglichen, Schleifen mit unbestimmter Länge auszuführen. Die while-Schleife wiederholt einen Anweisungsblock, bis eine bestimmte Bedingung erfüllt ist. Sie funktioniert folgendermaßen:
While-Schleife
Die while-Schleife führt einen Anweisungsblock so lange aus, bis eine bestimmte Bedingung zutrifft.
while Bedingung
Anweisungsblock
end
Die while-Schleife ist insofern unbestimmt, als dass die Anzahl der Durchführungen nicht immer vorhersehbar ist.
Beispielsweise könnte eine solche Schleife 10, 100 oder gar eine Milliarde Mal durchlaufen werden.
Wird die Bedingung zu Beginn nicht erfüllt, findet kein Durchlauf statt.
Hinweis: Eine ständig erfüllte Bedingung führt zu einer Endlosschleife, was vermieden werden sollte, da sie unnötig Systemressourcen beansprucht.
Die while-Schleife eignet sich sowohl für festgelegte als auch für variable Schleifen.
Ein praktisches Beispiel einer while-Schleife:
x=1;
while x<10
disp(x);
x=x+1;
end
Diese Schleife gibt eine Zahlenreihe von 1 bis 9 aus.
1
2
3
4
5
6
7
8
9
Do-until-Schleife
Abschließend werfen wir einen Blick auf die do-until-Schle ife.
Diese führt mindestens eine Iteration aus, da die Bedingung erst am Ende jeder Iteration geprüft wird.
In Matlab gibt es keine spezielle Anweisung für die do-until-Schleife, sie lässt sich jedoch einfach mittels einer while-Schleife implementieren. Hier ein Beispiel:
cond=true;
x=1;
while cond
disp(x);
x=x+1;
if (x>9)
cond=false;
end
end
Diese Schleife gibt ebenfalls eine Zahlenreihe von 1 bis 9 aus.
1
2
3
4
5
6
7
8
9
Damit haben wir die wichtigsten zyklischen Strukturen in Matlab abgedeckt. Ich hoffe, diese Erläuterungen helfen Ihnen dabei, wiederkehrende Abläufe effizienter zu gestalten.