MATLAB - Opérations logiques
MATLAB propose deux types d'opérateurs et de fonctions logiques -
Par élément - ces opérateurs opèrent sur les éléments correspondants des tableaux logiques.
Court-circuit - ces opérateurs fonctionnent sur des expressions logiques scalaires.
Les opérateurs logiques élément par élément opèrent élément par élément sur des tableaux logiques. Les symboles &, | et ~ sont les opérateurs de tableau logique AND, OR et NOT.
Les opérateurs logiques de court-circuit permettent le court-circuit sur les opérations logiques. Les symboles && et || sont les opérateurs logiques de court-circuit ET et OU.
Exemple
Créez un fichier de script et tapez le code suivant -
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
Lorsque vous exécutez le fichier, il produit le résultat suivant -
Line 1 - Condition is true
Line 2 - Condition is true
Line 3 - Condition is not true
Line 4 - Condition is true
Fonctions pour les opérations logiques
Outre les opérateurs logiques mentionnés ci-dessus, MATLAB fournit les commandes ou fonctions suivantes utilisées dans le même but -
N ° Sr. | Description de la fonction |
---|---|
1 | and(A, B) Recherche le ET logique du tableau ou des entrées scalaires; effectue un ET logique de tous les tableaux d'entrée A, B, etc. et renvoie un tableau contenant des éléments définis sur 1 logique (vrai) ou 0 logique (faux). Un élément du tableau de sortie est défini sur 1 si tous les tableaux d'entrée contiennent un élément différent de zéro à ce même emplacement du tableau. Sinon, cet élément est défini sur 0. |
2 | not(A) Recherche le NON logique du tableau ou de l'entrée scalaire; exécute un NOT logique du tableau d'entrée A et renvoie un tableau contenant des éléments définis sur 1 logique (vrai) ou 0 logique (faux). Un élément du tableau de sortie est défini sur 1 si le tableau d'entrée contient un élément de valeur zéro à ce même emplacement de tableau. Sinon, cet élément est défini sur 0. |
3 | or(A, B) Trouve le OU logique du tableau ou des entrées scalaires; effectue un OU logique de tous les tableaux d'entrée A, B, etc. et renvoie un tableau contenant des éléments définis sur 1 logique (vrai) ou 0 logique (faux). Un élément du tableau de sortie est défini sur 1 si des tableaux d'entrée contiennent un élément différent de zéro à ce même emplacement du tableau. Sinon, cet élément est défini sur 0. |
4 | xor(A, B) OU exclusif logique; effectue une opération OU exclusif sur les éléments correspondants des tableaux A et B. L'élément résultant C (i, j, ...) est logique vrai (1) si A (i, j, ...) ou B (i, j, ...), mais pas les deux, est différent de zéro. |
5 | all(A) Déterminez si tous les éléments du tableau du tableau A sont différents de zéro ou true.
|
6 | all(A, dim) Teste le long de la dimension de A spécifiée par dim scalaire . |
sept | any(A) Déterminez si des éléments du tableau sont différents de zéro; teste si l'un des éléments le long de différentes dimensions d'un tableau est un nombre différent de zéro ou un 1 logique (vrai). La fonction any ignore les entrées qui sont NaN (pas un nombre).
|
8 | any(A,dim) Teste le long de la dimension de A spécifiée par dim scalaire . |
9 | false 0 logique (faux) |
dix | false(n) est une matrice n-par-n de zéros logiques |
11 | false(m, n) est une matrice m par n de zéros logiques. |
12 | false(m, n, p, ...) est un tableau m-par-n-par-p-par -... de zéros logiques. |
13 | false(size(A)) est un tableau de zéros logiques de la même taille que le tableau A. |
14 | false(...,'like',p) est un tableau de zéros logiques du même type de données et de la même parcimonie que le tableau logique p. |
15 | ind = find(X) Trouvez des indices et des valeurs d'éléments différents de zéro; localise tous les éléments non nuls du tableau X et renvoie les indices linéaires de ces éléments dans un vecteur. Si X est un vecteur ligne, alors le vecteur renvoyé est un vecteur ligne; sinon, il renvoie un vecteur de colonne. Si X ne contient aucun élément différent de zéro ou est un tableau vide, un tableau vide est renvoyé. |
16 | ind = find(X, k) ind = find(X, k, 'first') Renvoie au plus les k premiers indices correspondant aux entrées non nulles de X. k doit être un entier positif, mais il peut être de n'importe quel type de données numériques. |
17 | ind = find(X, k, 'last') renvoie au plus les k derniers indices correspondant aux entrées non nulles de X. |
18 | [row,col] = find(X, ...) Renvoie les index de ligne et de colonne des entrées différentes de zéro dans la matrice X. Cette syntaxe est particulièrement utile lorsque vous travaillez avec des matrices creuses. Si X est un tableau à N dimensions avec N> 2, col contient des indices linéaires pour les colonnes. |
19 | [row,col,v] = find(X, ...) Renvoie une colonne ou un vecteur de ligne v des entrées différentes de zéro dans X, ainsi que des index de ligne et de colonne. Si X est une expression logique, alors v est un tableau logique. La sortie v contient les éléments non nuls du tableau logique obtenu en évaluant l'expression X. |
20 | islogical(A) Déterminez si l'entrée est un tableau logique; renvoie true si A est un tableau logique et false dans le cas contraire. Elle renvoie également true si A est une instance d'une classe dérivée de la classe logique. |
21 | logical(A) Convertissez les valeurs numériques en valeurs logiques; renvoie un tableau qui peut être utilisé pour l'indexation logique ou les tests logiques. |
22 | true Logique 1 (vrai) |
23 | true(n) est une matrice n par n de nombres logiques. |
24 | true(m, n) est une matrice m par n de valeurs logiques. |
25 | true(m, n, p, ...) est un tableau m-par-n-par-p-par -... de valeurs logiques. |
26 | true(size(A)) est un tableau de valeurs logiques de la même taille que le tableau A. |
27 | true(...,'like', p) est un tableau de données logiques du même type de données et de la même parcimonie que le tableau logique p. |