Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

not, ~

構文

説明

~A は、A と同じサイズの logical 配列を返します。この配列は、A の要素がゼロのときに logical 1 (true)、A の要素が非ゼロのときに logical 0 (false) になる要素を含みます。

not(A)~A の代替方法として実行できますが、まれにしか使われません。これにより、クラスの演算子のオーバーロードが可能です。

すべて折りたたむ

3 行 3 列の単位行列を作成します。

A = eye(3)
A = 3×3

     1     0     0
     0     1     0
     0     0     1

A の論理否定を求めます。新しい行列の型は logical になります。

B = ~A
B = 3x3 logical array

   0   1   1
   1   0   1
   1   1   0

if ループのコンテキスト内で論理 NOT 演算子を使用して、条件に基づいてコードを実行します。

論理変数 A を作成します。

A = false;

A を使用して if/else コード ブロックを作成します。if/else ブロックを for ループで囲み、4 回実行されるようにします。

for k = 1:4
    if ~A
        disp('IF block')
        A = true;
    else
        disp('ELSE block')
    end
end
IF block
ELSE block
ELSE block
ELSE block

1 回目の反復では、Afalse であるため、~Atrue になり if ブロックが実行されます。ただし、if ブロックは A の値を true に変更します。残りの反復では、~Afalse であるため、else ブロックが実行されます。

入力引数

すべて折りたたむ

入力配列。数値スカラー、ベクトル、行列または多次元配列として指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
複素数のサポート: あり

ヒント

  • ~ 記号は、関数呼び出しのプレースホルダー出力引数として使用することもできます。たとえば、[~,i] = max(A) は関数 max の最初の出力を抑制し、最大値のインデックスのみを返します。詳細については、関数定義の入力の無視を参照してください。

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。

HDL コード生成
HDL Coder™ を使用して FPGA 設計および ASIC 設計のための Verilog および VHDL のコードを生成します。

バージョン履歴

R2006a より前に導入