Main Content

logical

Convertir des valeurs numériques en expressions logiques

Description

exemple

L = logical(A) convertit A en tableau de valeurs logiques. Tout élément non nul de A est converti en expression logique 1 (true) et les zéros sont convertis en expression logique 0 (false). Les valeurs complexes et les NaN ne peuvent pas être convertis en valeurs logiques et entraînent une erreur de conversion.

Exemples

réduire tout

Sélectionnez les éléments impairs d’une matrice numérique.

Créez une matrice numérique.

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

Recherchez le module mod(A,2) et convertissez-le en tableau logique pour l’indexation.

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

   1   1   0
   1   0   1
   0   1   1

Le tableau a des valeurs logiques 1 (true) lorsque A est impair.

Utilisez L en tant qu’index logique pour sélectionner les éléments impairs de A.

A(L)
ans = 6×1

     1
     5
    -3
     1
     7
     3

Le résultat est un vecteur contenant tous les éléments impairs de A.

Utilisez l’opérateur logique NOT noté « ~ » sur L pour rechercher les éléments pairs de A.

A(~L)
ans = 3×1

    -8
     4
     2

Arguments d'entrée

réduire tout

Tableau en entrée, spécifié sous forme de scalaire, de vecteur, de matrice ou de tableau multidimensionnel.

Types de données : single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char

Conseils

  • La plupart des opérations arithmétiques impliquant des tableaux logiques renvoient des valeurs doubles. On obtient par exemple un tableau double en ajoutant zéro à un tableau logique.

  • Les tableaux logiques sont également créés par les opérateurs relationnels (==, <, >, ~=, etc.) et des fonctions telles que any, all, isnan, isinf et isfinite.

Capacités étendues

Génération de code C/C++
Générez du code C et C++ avec MATLAB® Coder™.

Génération de code GPU
Générez du code CUDA® pour les GPU NVIDIA® avec GPU Coder™.

Génération de code HDL
Générez du code VHDL, Verilog et SystemVerilog pour les designs FPGA et ASIC avec HLD Coder™.

Historique des versions

Introduit avant R2006a