Main Content

logical

Convertire valori numerici in logici

Descrizione

esempio

L = logical(A) converte A in un array di valori logici. Qualsiasi elemento di A diverso da zero è convertito in 1 logico (true) mentre gli zeri sono convertiti in 0 logico (false). I valori complessi e i NaN non possono essere convertiti in valori logici e danno luogo a un errore di conversione.

Esempi

comprimi tutto

Selezionare gli elementi di numero dispari da una matrice numerica.

Creare una matrice numerica.

A = [1 -3 2;5 4 7;-8 1 3];

Trovare il modulo mod(A,2) e convertirlo in un array logico per l’indicizzazione.

L = logical(mod(A,2))
L = 3x3 logical array

   1   1   0
   1   0   1
   0   1   1

L’array ha valori 1 logici (true) dove A è dispari.

Utilizzare L come indice logico per selezionare gli elementi dispari di A.

A(L)
ans = 6×1

     1
     5
    -3
     1
     7
     3

Il risultato è un vettore contenente tutti gli elementi dispari di A.

Utilizzare l'operatore logico NOT ~ su L per trovare gli elementi pari di A.

A(~L)
ans = 3×1

    -8
     4
     2

Argomenti di input

comprimi tutto

Array di input, specificato come scalare, vettore, matrice o array multidimensionale.

Tipi di dati: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char

Suggerimenti

  • La maggior parte delle operazioni aritmetiche che coinvolgono array logici restituiscono valori doppi. Ad esempio, aggiungendo zero a un array logico si ottiene un array doppio.

  • Gli array logici sono creati inoltre dagli operatori relazionali (==,<,>,~=, ecc.) e dalle funzioni come any, all, isnan, isinf e isfinite.

Funzionalità estese

Generazione di codice C/C++
Genera codice C e C++ con MATLAB® Coder™.

Generazione di codice GPU
Genera codice CUDA® per GPU NVIDIA® con GPU Coder™.

Generazione di codice HDL
Genera codice VHDL, Verilog e SystemVerilog per progetti FPGA e ASIC utilizzando HDL Coder™.

Cronologia versioni

Introduzione prima di R2006a