一、if函數基本用法
if是matlab中常用的基礎控制語句之一,它根據判斷條件是否成立,決定程序接下來執行的語句。if函數的基本語法為:
if (condition)
statement1
else
statement2
end
其中,condition是判斷條件,statement1是判斷條件成立時要執行的語句,statement2是判斷不成立時要執行的語句。
下面給出一個簡單的例子,演示if函數的基本用法:
x = input('請輸入一個整數:');
if x > 0
disp('你輸入的是正整數');
else
disp('你輸入的不是正整數');
end
在這個例子中,用戶輸入一個整數,程序通過if語句判斷這個數是否大於0,如果成立就輸出「你輸入的是正整數」,否則輸出「你輸入的不是正整數」。
二、if函數的嵌套使用
if函數可以嵌套使用,以實現更加複雜的邏輯判斷。下面給出一個示例,演示如何使用if函數來判斷輸入的三個數是否都是偶數:
a = input('請輸入第一個整數:');
b = input('請輸入第二個整數:');
c = input('請輸入第三個整數:');
if rem(a,2) == 0
if rem(b,2) == 0
if rem(c,2) == 0
disp('你輸入的三個數都是偶數');
else
disp('你輸入的三個數不都是偶數');
end
else
disp('你輸入的三個數不都是偶數');
end
else
disp('你輸入的三個數不都是偶數');
end
在這個例子中,程序先判斷第一個數是否為偶數,如果是,再判斷第二個數是否為偶數,同樣,如果第二個數也是偶數,再判斷第三個數是否為偶數,如果三個數都是偶數,則輸出「你輸入的三個數都是偶數」,否則輸出「你輸入的三個數不都是偶數」。
三、if函數的短路效應
在if函數的嵌套使用中,很多情況下需要用到「與」、「或」的邏輯判斷。如果使用簡單的表達式會導致不必要的計算,影響程序的執行效率。而if函數具有短路效應,可以有效地避免這個問題。下面給出一個示例,演示「與」、「或」邏輯表達式的簡化:
a = input('請輸入第一個整數:');
b = input('請輸入第二個整數:');
if (rem(a,2) == 0) && (rem(b,2) == 0)
disp('你輸入的兩個數都是偶數');
end
if (rem(a,2) == 0) || (rem(b,2) == 0)
disp('你輸入的至少有一個數是偶數');
end
在這個例子中,程序先用「與」的邏輯運算符&&判斷輸入的兩個數是否都為偶數,如果成立,則輸出「你輸入的兩個數都是偶數」;接著使用「或」的邏輯運算符||判斷輸入的兩個數是否至少有一個是偶數,如果成立,則輸出「你輸入的至少有一個數是偶數」。
四、if函數的多重判斷
if函數還可以進行多重判斷,以實現更加複雜的邏輯。下面給出一個示例,演示如何使用if函數來計算學生的績點:
score = input('請輸入您的成績:');
if score >= 90
disp('你的績點為4.0');
elseif score >= 85
disp('你的績點為3.7');
elseif score >= 82
disp('你的績點為3.3');
elseif score >= 78
disp('你的績點為3.0');
elseif score >= 75
disp('你的績點為2.7');
elseif score >= 72
disp('你的績點為2.3');
elseif score >= 68
disp('你的績點為2.0');
elseif score >= 64
disp('你的績點為1.5');
elseif score >= 60
disp('你的績點為1.0');
else
disp('你的績點為0');
end
在這個例子中,程序先判斷輸入的成績是否大於等於90分,如果是,則輸出「你的績點為4.0」;如果不是,則繼續判斷成績是否大於等於85分,以此類推。如果所有條件都不成立,則輸出「你的績點為0」。
原創文章,作者:JGPOY,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/368418.html