1、关系运算
MATLAB提供了6种关系运算符
关系运算符的运算法则如下:
(1)当两个标量相比较时,直接比较两数的大小。
若关系成立,关系表达式结果为1,否则为0。
(2)当一个标量与一个矩阵相比较时,则把标量与矩阵的每一个元素按标量关系运算规则逐个比较,并给出元素比较结果。最终关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由0或1组成。
(3)当参与比较的量是两个维数相同的矩阵时,比较是对两矩阵相同位置的元素按标量关系运算规则逐个进行,并给出元素比较结果。最终关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由1或0组成。
eg.一个1到9的向量和一个标量比较
2、逻辑运算
提供了3种数组逻辑运算符
(1)在逻辑运算中,非零元素为真,用1表示,零元素为假,用0表示。
(2)设参与逻辑运算的是两个标量a和b
a&b表示a、b全为非零时,运算结果为1,否则为0.
a|b表示a、b中只要有一个非零,运算结果为1.
~a表示当a是零时,运算结果为1;当a非零时,运算结果为0.
(3)若参与逻辑运算的一个是标量,一个是矩阵,
那么运算将在标量与矩阵中的每个元素之间按标量规则逐个进行。最终运算结果是一个与矩阵同维的矩阵,其元素由1或0组成。
(4)若参与逻辑运算的是两个同维矩阵,那么运算将对矩阵相同位置上的元素按标量规则逐个进行。最终运算结果是一个与原矩阵同维的矩阵,其元素由1或0组成。
(5)逻辑非是单目运算符,也服从矩阵运算规则。
(6)在算术、关系、逻辑运算中,算术运算符优先级最高,逻辑运算优先级最低。
MATLAB除了提供3种基于数组的逻辑运算符,还提供了另外两种逻辑操作
(1)基于二进制数位的逻辑操作,指令有bitand(数位与、和)、bitor(数位或)、bitcmp(数位否、非)、bitxor(相异数位返回1,相同数位返回0)
(2)先决逻辑操作,指令有&&、||。
3、关系、逻辑函数
(1)关系逻辑函数:
xor(A,B)异或,两个元素
any(A)任何一个数据是非零的就是1
all(A)
isequal(A,B):A与B相等就返回1,不相等就返回0
ismember(A,B):B是A中的一部分时返回1,不是返回0
(2)特殊数据判断指令
isempty(x):x是否为空矩阵
isfinite(X):x是否为有界的数据
isinf(x):x是否为无穷的数据
isletter(x):x是否为字符型的数据
isnan(x):x是否非数
isprime(x):
isreal(x):
isspace(x):