MATLAB 中的條件語句

Ammar Ali 2022年5月11日
MATLAB 中的條件語句

本教程將討論使用 MATLAB 中的條件語句定義程式碼執行的條件。

MATLAB 中的條件語句

與其他程式語言一樣,MATLAB 也提供了許多條件語句,如 if、if-else、if...else...if、巢狀的 if...elseswitch 語句。

首先,讓我們談談 if 語句。如果我們只希望程式碼在特定表示式上執行,我們可以使用 if 語句。

if 語句中的程式碼只有在條件為真時才會執行。要定義條件,我們可以使用算術和邏輯運算子。

算術運算子包括小於、大於、等於、小於和等於、大於和等於。邏輯運算子包括 and 運算子和 or 運算子。

邏輯運算子用於組合兩個或多個條件。如果我們希望程式碼僅在兩個或多個條件為真時執行,我們可以使用 and 運算子。

如果我們希望程式碼僅在一個或多個條件為真時執行,我們可以使用 or 運算子。例如,假設我們只想在值大於 0 時顯示文字 GreaterThan

請參閱下面的程式碼。

clc
clear
value1 = 5;
if(value1 > 0)
    disp('GreaterThan')
end

輸出:

GreaterThan

在輸出中,因為值大於 0,所以顯示文字。

現在考慮,如果值不大於 0,我們希望顯示 LessThan 文字。在這種情況下,我們可以使用 if...else 語句。

請參閱下面的程式碼。

clc
clear
value1 = -5;
if(value1 > 0)
    disp('GreaterThan')
else
    disp('LessThan')
end

輸出:

LessThan

LessThan 文字顯示在輸出中,因為該值不大於 0。

if...else 語句的情況下,如果條件為真,則將執行 if 語句中的程式碼。如果為 false,則將執行 else 語句中的程式碼。

現在,考慮一下,在檢查該值是否大於或小於 0 後,我們還想檢查該值是否等於 5,如果該值等於 5,我們將顯示 ValueIsFive 文字。在這種情況下,我們可以使用巢狀的 if...else 語句。

請參閱下面的程式碼。

clc
clear
value1 = 5;
if(value1 > 0)
    disp('GreaterThan')
    if(value1 == 5)
        disp('ValueIsFive')
    end
else
    disp('LessThan')
end

輸出:

GreaterThan
ValueIsFive

在輸出中,顯示兩個文字,因為輸入值大於零,而且它等於 5。如果我們只想檢查第一個語句是否為真,可以使用 if...else...if 語句。

例如,考慮一下,我們想要檢查一個值是否小於 0 以及它是否等於 -5。請參閱下面的程式碼。

clc
clear
value1 = -5;
if(value1 > 0)
    disp('GreaterThan')
else if(value1 == -5)
        disp('Value = -5')
    else
        disp('LessThan')
    end
end

輸出:

Value = -5

我們也可以使用 switch 語句代替 if...else...if 語句的階梯。例如,讓我們將上面的程式碼轉換為 switch 語句。

請參閱下面的程式碼。

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

輸出:

value = -5

現在,讓我們使用邏輯運算子在 if 語句中定義多個條件。請參閱下面的程式碼。

clc
clear
value1 = 5;
if(value1 > 0 && value1 < 100)
    disp('Value is between 0-100')
end

輸出:

Value is between 0-100

在程式碼中,只有當值在 0 到 100 之間時才會列印文字。

假設我們使用&&運算子,if 語句中的程式碼只有在所有條件都為真時才會執行。假設我們使用||運算子,如果一個或多個條件為真,則執行 if 語句中的程式碼。

作者: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook