Main Content

logical

Convertir valores numéricos en lógicos

Descripción

ejemplo

L = logical(A) convierte A en un arreglo de valores lógicos. Cualquier elemento de A distinto de cero se convierte a 1 (true) lógico, y los ceros se convierten a 0 (false) lógico. Los valores complejos y los NaN no se pueden convertir a valores lógicos y dan lugar a un error de conversión.

Ejemplos

contraer todo

Seleccione los elementos impares de una matriz numérica.

Cree una matriz numérica.

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

Busque el módulo, mod(A,2), y conviértalo en un arreglo lógico para indexarlo.

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

   1   1   0
   1   0   1
   0   1   1

El arreglo tiene valores lógicos 1 (true) en los que A es impar.

Utilice L como índice lógico para seleccionar los elementos impares de A.

A(L)
ans = 6×1

     1
     5
    -3
     1
     7
     3

El resultado es un vector que contiene todos los elementos impares de A.

Utilice el operador NO lógico, ~, en L para encontrar los elementos pares de A.

A(~L)
ans = 3×1

    -8
     4
     2

Argumentos de entrada

contraer todo

Arreglo de entrada, especificado como escalar, vector, matriz o arreglo multidimensional.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char

Sugerencias

  • La mayoría de las operaciones aritméticas que implican arreglos lógicos obtiene valores dobles. Por ejemplo, al añadir cero a un arreglo lógico se obtiene un arreglo doble.

  • Los operadores relacionales (==, <, >, ~=, etc.) y las funciones como any, all, isnan, isinf y isfinite también crean arreglos lógicos.

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Generación de código de GPU
Genere código CUDA® para GPU NVIDIA® mediante GPU Coder™.

Generación de código HDL
Genere código VHDL, Verilog y SystemVerilog para diseños FPGA y ASIC mediante HDL Coder™.

Historial de versiones

Introducido antes de R2006a