上QQ阅读APP看书,第一时间看更新
4.10 数组的关系运算
MATLAB提供了6种关系运算符,即<小于关系、<=小于或等于关系、>大于关系、>=大于或等于关系、==等于关系和~=不等于关系。它们的含义很容易理解,需要注意的是,其书写方法与数学中的不等式符号不尽相同。关系运算符的运算法则如下:
•当两个比较量是标量时,直接比较两数的大小。若关系成立,则关系表达式结果为1,否则是0。
•当参与比较量是两个维数相同的数组时,比较是对两数组相同位置的元素按标量关系运算规则逐个进行,并给出比较结果。最终的关系运算结果是一个维数与原矩阵相同的数组,它的元素由0或1组成。
•当参与比较的一个是标量,而另一个是数组时,则把标量与数组的每一个元素按标量关系运算规则逐个比较,并给出元素比较结果。最终的关系运算结果是一个维数与原数组相同的数组,它的元素由0或1组成。
【例4.14】 数组的比较。
clear all; A=[11 10 13 4 5] B=[3 15 21 6 5] C=A < =10 %数组和常数的比较,小于或等于 D=A > 10 %数组和常数的比较,大于 E=A > B %数组和数组的比较,大于 F=A==B %数组和数组的比较,恒等于
运行后输出结果如下:
A= 11 10 13 4 5 B= 3 15 21 6 5 C= 0 1 0 1 1 D= 1 0 1 0 0 E= 1 0 0 0 0 F= 0 0 0 0 1
在程序中,进行数组和常数的比较,以及数组和数组的比较,返回值是逻辑值(0或1),与原数组有相同的维数。
【例4.15】 修改数组A中大于10的元素为10。
clear all; A=[11 10 13 4 5] B=[3 15 21 6 5] A(A > 10)=10 B(B==5)=100
运行后输出结果如下:
A= 11 10 13 4 5 B= 3 15 21 6 5 A= 10 10 10 4 5 B= 3 15 21 6 100
在程序中,将数组A中大于10的元素改为10,将数组B中等于5的元素改为100。