Bedingte Anweisung in MATLAB
In diesem Tutorial wird die Definition der Bedingungen für die Codeausführung mit den bedingten Anweisungen in MATLAB erläutert.
Bedingte Anweisungen in MATLAB
Wie andere Programmiersprachen bietet auch MATLAB viele bedingte Anweisungen wie die if-, if-else-, if...else...if
-, verschachtelten if...else
- und switch
-Anweisungen.
Lassen Sie uns zunächst über die if-Anweisung sprechen. Wir können die if-Anweisung verwenden, wenn der Code nur bei einem bestimmten Ausdruck ausgeführt werden soll.
Der Code in der if-Anweisung wird nur ausgeführt, wenn die Bedingung wahr ist. Um eine Bedingung zu definieren, können wir arithmetische und logische Operatoren verwenden.
Die arithmetischen Operatoren umfassen kleiner als, größer als, gleich, kleiner als und gleich, größer als und gleich. Der logische Operator enthält den Operator und und den Operator oder.
Die logischen Operatoren werden verwendet, um zwei oder mehr Bedingungen zu kombinieren. Wir können den and-Operator verwenden, wenn der Code nur ausgeführt werden soll, wenn zwei oder mehr Bedingungen zutreffen.
Wir können den Operator or verwenden, wenn der Code nur ausgeführt werden soll, wenn eine oder mehrere Bedingungen zutreffen. Nehmen wir zum Beispiel an, wir möchten den Text GreaterThan
nur anzeigen, wenn der Wert größer als 0 ist.
Siehe den Code unten.
clc
clear
value1 = 5;
if(value1 > 0)
disp('GreaterThan')
end
Ausgabe:
GreaterThan
In der Ausgabe wird der Text angezeigt, da der Wert größer als 0 ist.
Überlegen Sie nun, wir möchten den Text LessThan
anzeigen, wenn der Wert nicht größer als 0 ist. In diesem Fall können wir die Anweisung if...else
verwenden.
Siehe den Code unten.
clc
clear
value1 = -5;
if(value1 > 0)
disp('GreaterThan')
else
disp('LessThan')
end
Ausgabe:
LessThan
Der Text LessThan
wird in der Ausgabe angezeigt, da der Wert nicht grösser als 0 ist.
Im Fall der if...else
-Anweisung wird der Code innerhalb der if-Anweisung ausgeführt, wenn die Bedingung wahr ist. Wenn es falsch ist, wird der Code innerhalb der else
-Anweisung ausgeführt.
Bedenken Sie nun, dass wir nach der Prüfung, ob der Wert größer oder kleiner als 0 ist, auch prüfen möchten, ob der Wert gleich 5 ist oder nicht, und wenn der Wert gleich 5 ist, wird der Text ValueIsFive
angezeigt. In diesem Fall können wir die verschachtelte if...else
-Anweisung verwenden.
Siehe den Code unten.
clc
clear
value1 = 5;
if(value1 > 0)
disp('GreaterThan')
if(value1 == 5)
disp('ValueIsFive')
end
else
disp('LessThan')
end
Ausgabe:
GreaterThan
ValueIsFive
In der Ausgabe werden zwei Texte angezeigt, weil der Eingabewert größer Null ist und außerdem gleich 5 ist. Die if...else...if
-Anweisung kann verwendet werden, wenn wir nur überprüfen möchten, ob die erste Aussage nicht wahr ist.
Betrachten wir zum Beispiel, dass wir einen Wert überprüfen möchten, ob er kleiner als 0 ist und ob er gleich -5 ist oder nicht. Siehe den Code unten.
clc
clear
value1 = -5;
if(value1 > 0)
disp('GreaterThan')
else if(value1 == -5)
disp('Value = -5')
else
disp('LessThan')
end
end
Ausgabe:
Value = -5
Wir können auch eine switch
-Anweisung anstelle einer Leiter der if...else...if
-Anweisung verwenden. Lassen Sie uns zum Beispiel den obigen Code in eine switch
-Anweisung umwandeln.
Siehe den Code unten.
clc
clear
value1 = -5;
switch(value1)
case 0
disp('value = 0')
case 5
disp('value = 5')
case -5
disp('value = -5')
otherwise
disp('Default Value')
end
Ausgabe:
value = -5
Lassen Sie uns nun die logischen Operatoren verwenden, um mehrere Bedingungen in einer if-Anweisung zu definieren. Siehe den Code unten.
clc
clear
value1 = 5;
if(value1 > 0 && value1 < 100)
disp('Value is between 0-100')
end
Ausgabe:
Value is between 0-100
Im Code wird der Text nur gedruckt, wenn der Wert zwischen 0 und 100 liegt.
Angenommen, wir verwenden den Operator &&
, der Code in der if-Anweisung wird nur ausgeführt, wenn alle Bedingungen erfüllt sind. Angenommen, wir verwenden das ||
Operator wird der Code in der if-Anweisung ausgeführt, wenn eine oder mehrere Bedingungen wahr sind.