Matlab-logical-operators
MATLAB-論理演算
MATLABは、論理演算子と関数の2種類を提供しています-
- 要素単位-これらの演算子は、論理配列の対応する要素を操作します。 *短絡-これらの演算子はスカラーの論理式で動作します。
要素単位の論理演算子は、論理配列の要素ごとに動作します。 記号&、|、および〜は、論理配列演算子AND、OR、およびNOTです。
短絡論理演算子は、論理演算の短絡を可能にします。 記号&&および||論理短絡演算子ANDおよびORです。
例
スクリプトファイルを作成し、次のコードを入力します-
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は同じ目的で使用される以下のコマンドまたは関数を提供します-
Sr.No. | Function & Description |
---|---|
1 |
配列またはスカラー入力の論理ANDを検索します。すべての入力配列A、Bなどの論理ANDを実行します。 そして、論理1(true)または論理0(false)に設定された要素を含む配列を返します。 すべての入力配列に同じ配列位置にゼロ以外の要素が含まれている場合、出力配列の要素は1に設定されます。 それ以外の場合、その要素は0に設定されます。 |
2 |
not(A) 配列またはスカラー入力の論理否定を見つけます。入力配列Aの論理NOTを実行し、論理1(true)または論理0(false)に設定された要素を含む配列を返します。 入力配列の同じ配列位置にゼロ値要素が含まれている場合、出力配列の要素は1に設定されます。 それ以外の場合、その要素は0に設定されます。 |
3 |
or(A, B) 配列またはスカラー入力の論理ORを見つけます。すべての入力配列A、Bなどの論理ORを実行します。 そして、論理1(true)または論理0(false)に設定された要素を含む配列を返します。 入力配列に同じ配列位置にゼロ以外の要素が含まれている場合、出力配列の要素は1に設定されます。 それ以外の場合、その要素は0に設定されます。 |
4 |
xor(A, B) 論理排他的OR。配列AおよびBの対応する要素に対して排他的OR演算を実行します。 結果の要素C(i、j、…)は、A(i、j、…)またはB(i、j、…)の両方ではなく両方がゼロでない場合、論理的に真(1)です。 |
5 |
all(A) 配列Aのすべての配列要素が非ゼロまたは真かどうかを判別します。
|
6 |
スカラー_dim_で指定されたAの次元に沿ってテストします。 |
7 |
any(A) 配列要素がゼロでないかどうかを判断します。配列のさまざまな次元に沿った要素のいずれかがゼロ以外の数値であるか、論理1(true)であるかをテストします。 any関数は、NaN(Not a Number)のエントリを無視します。
|
8 |
スカラー_dim_で指定されたAの次元に沿ってテストします。 |
9 |
false 論理値0(偽) |
10 |
false(n) 論理ゼロのn行n列の行列です |
11 |
false(m, n) は、論理ゼロのm行n列の行列です。 |
12 |
false(m, n, p, …) は、m x n x p … 論理ゼロの配列。 |
13 |
false(size(A)) 配列Aと同じサイズの論理ゼロの配列です。 |
14 |
false(…,'like',p) は、論理配列pと同じデータ型とスパース性の論理ゼロの配列です。 |
15 |
ind = find(X) 非ゼロ要素のインデックスと値を見つけます。配列Xのすべての非ゼロ要素を見つけ、それらの要素の線形インデックスをベクトルで返します。 Xが行ベクトルの場合、返されるベクトルは行ベクトルです。それ以外の場合、列ベクトルを返します。 Xに非ゼロ要素が含まれていないか、空の配列である場合、空の配列が返されます。 |
16 |
ind = find(X, k)
Xの非ゼロエントリに対応する最大で最初のk個のインデックスを返します。 kは正の整数でなければなりませんが、任意の数値データ型にすることができます。 |
17 |
Xの非ゼロエントリに対応する最大で最後のk個のインデックスを返します。 |
18 |
[row,col] = find(X, …) 行列Xの非ゼロエントリの行と列のインデックスを返します。 この構文は、スパース行列を扱うときに特に役立ちます。 XがN> 2のN次元配列の場合、colには列の線形インデックスが含まれます。 |
19 |
[row,col,v] = find(X, …) Xの非ゼロエントリの列または行ベクトルv、および行と列のインデックスを返します。 Xが論理式の場合、vは論理配列です。 出力vには、式Xを評価することによって取得された論理配列の非ゼロ要素が含まれます。 |
20 |
islogical(A) 入力が論理配列かどうかを判別します。 Aが論理配列の場合はtrueを返し、そうでない場合はfalseを返します。 また、Aが論理クラスから派生したクラスのインスタンスである場合もtrueを返します。 |
21 |
logical(A) 数値を論理値に変換します。論理インデックス付けまたは論理テストに使用できる配列を返します。 |
22 |
true 論理1(true) |
23 |
true(n) 論理値1のn行n列の行列です。 |
24 |
true(m, n) 論理的なもののm行n列の行列です。 |
25 |
true(m, n, p, …) は、m x n x p … 論理的なものの配列。 |
26 |
true(size(A)) は、配列Aと同じサイズの論理配列です。 |
27 |
true(…,'like', p) は、論理配列pと同じデータ型とスパース性の論理配列です。 |