詳細例子
在MATLAB中建立一個腳本文件,并輸入下面的代碼:
a = 5; b = 20; if ( a && b ) disp('Line 1 - Condition is true'); end if ( a || b ) disp('Line 2 - Condition is true'); end % lets change the value of a and b a = 0; b = 10; if ( a && b ) disp('Line 3 - Condition is true'); else disp('Line 3 - Condition is not true'); end if (~(a && b)) disp('Line 4 - Condition is true'); end
運行該文件,產生如下結果:
Line 1 - Condition is true Line 2 - Condition is true Line 3 - Condition is not true Line 4 - Condition is true
MATLAB邏輯運算功能
除了在上述的邏輯運算符,MATLAB 提供下面的命令或函數用于同樣的目的:
函數 | 描述 |
---|---|
and(A, B) | 查找數組或標量輸入的邏輯和;執(zhí)行所有輸入數組A,B等的邏輯AND,并返回包含設置為邏輯1(真)或邏輯0(假)的元素的數組。如果所有輸入數組在同一個數組位置都包含一個非零元素,那么輸出數組的一個元素將被設置為1;否則,該元素設置為0。 |
not(A) | 查找數組或標量輸入的邏輯NOT;執(zhí)行輸入數組A的邏輯NOT,并返回包含設置為邏輯1(真)或邏輯0(假)的元素的數組。如果輸入數組在同一個數組位置包含一個零值元素,那么輸出數組的一個元素將被設置為1;否則,該元素設置為0。 |
or(A, B) | 查找數組或標量輸入的邏輯或; 執(zhí)行所有輸入數組A,B等的邏輯或,并返回包含設置為邏輯1(真)或邏輯0(假)的元素的數組。如果任何輸入數組在同一個數組位置包含一個非零元素,則輸出數組的一個元素設置為1;否則,該元素設置為0。 |
xor(A, B) | 邏輯異或; 對數組A和B的相應元素執(zhí)行異或運算。如果A(i,j,...)或B(i,j)...,則所得到的元素C(i,j,...) j,...),但不是兩者都是非零的。 |
all(A) | 確定數組A的所有數組元素是否為非零或真。
|
all(A, dim) | 通過標量dim沿著維數A的維度進行測試。 |
any(A) | 確定數組元素是否為非零;測試數組中不同維度的元素是否為非零數字,或是邏輯1(真)。 任何函數忽略NaN(不是數字)的條目。
|
any(A,dim) | 通過標量dim沿著維數A的維度進行測試。 |
false | 邏輯0(假) |
false(n) | 是邏輯0的n×n矩陣 |
false(m, n) | 是邏輯0的一個m×n矩陣。 |
false(m, n, p, ...) | 是由邏輯0的逐列逐列數組。 |
false(size(A)) | 是與數組A大小相同的邏輯零數組。 |
false(...,'like',p) | 是與邏輯陣列p相同的數據類型和稀疏性的邏輯零數組。 |
ind = find(X) | 查找非零元素的索引和值;定位數組X的所有非零元素,并返回向量中這些元素的線性索引。 如果X是行向量,則返回的向量是行向量; 否則返回列向量。如果X不包含非零元素或是空數組,則返回一個空數組。 |
ind = find(X, k) ind = find(X, k, 'first') | 最多返回與X的非零條目相對應的前k個索引。k必須是正整數,但它可以是任何數字數據類型。 |
ind = find(X, k, 'last') | 最多返回與X的非零條目相對應的最后k個索引。 |
[row,col] = find(X, ...) | 返回矩陣X中非零條目的行和列索引。使用稀疏矩陣時,此語法特別有用。 如果X是N>2的N維數組,col包含列的線性索引。 |
[row,col,v] = find(X, ...) | 返回X中非零條目的列或行向量v,以及行和列索引。如果X是邏輯表達式,則v是邏輯數組。 輸出v包含通過評估表達式X獲得的邏輯數組的非零元素。 |
islogical(A) | 確定輸入是否為邏輯數組;如果A是邏輯數組,返回true,否則返回false。 如果A是從邏輯類派生的類的實例,它也返回true。 |
logical(A) | 將數值轉換為邏輯;返回一個可用于邏輯索引或邏輯測試的數組。 |
true | 邏輯1(真) |
true(n) | 是一個n×n邏輯矩陣。 |
true(m, n) | 是一個mxn邏輯矩陣。 |
true(m, n, p, ...) | 是由邏輯1的逐列逐列數組。 |
true(size(A)) | 是與數組A大小相同的邏輯數組。 |
true(...,'like', p) | 是與邏輯陣列p相同的數據類型和稀疏性的邏輯陣列。 |
更多建議: