目录
一、算数运算符
二、关系运算符
三、逻辑运算符
一、算数运算符
MATLAB中的算术运算符有加、减、乘、除、点乘、点除等,其运算法则表:
示例1:数值与矩阵的算术运算
A=eye(2)
B=ones(2)
C=A*B
D=A.*B
运行结果:
此外,还有常用的运算函数:
二、关系运算符
MATLAB中的关系运算符有6个,其运算法则:
注意:“=”和“= =”的区别:“= =”的运算法则是比较两个变量,当它们相等时返回1,当它们不相等时返回0;而“=”则是被用来将运算的结果赋给一个变量。
示例2:关系运算符的运用(返回值为1,比较结果是真;返回值为0,比较结果是假)
A=1:9;
B=10-A;
TF=(A==B) %判断A与B中的元素是否相等
运行结果:
示例3:关系运算符的运算
A=5:-1:0
A=A+(A==0)*eps
运行结果:
注意:上例中利用特殊的MATLAB数eps代替一个数组中的零元素,eps近似为2.2e-16。这种特殊的表达式在避免0作为分母时是很有用的。
三、逻辑运算符
逻辑运算符提供了一种组合或否定关系表达式。MATLAB逻辑运算符:
示例4:
A=1:9;
TF=(A>2)&(A<6) %判断A元素是否在2-6之间
运行结果:
注意:使用逻辑运算符比较两个相同维数的矩阵时,是按元素来进行比较的,其比较结果是一个包含1和0的矩阵。元素0表示逻辑为假,元素1表示逻辑为真。
- A& B 返回一个与A和B相同维数的矩阵。在这个矩阵中,A和B对应元素都为非零时,则对应项为1;有一个为零时,则对应项为0。
- A | B 返回一个与A和B相同维数的矩阵。在这个矩阵中,A和B对应元素只要有一个为非零,则对应项为1;两个矩阵均为零时,则对应项为0。
- ~A 返回一个与A相同维数的矩阵。在这个矩阵中,A中对应项是零时,则对应项为1;A中对应项是非零时,则对应项为0。
此外,matlab还有基本的逻辑函数:
四、运算优先级
在一个表达式中,算术运算符优先级最高,其次是关系运算符,最后是逻辑运算符。需要时,可以通过加括号来改变运算顺序。
其运算优先级排列如:
注意:在表达式的书写中,建议采用括号分级的方式明确运算的先后顺序,避免优先级混乱而产生运算错误。