![人工智能算法](https://wfqqreader-1252317822.image.myqcloud.com/cover/768/47216768/b_47216768.jpg)
上QQ阅读APP看书,第一时间看更新
2.2.3 关系表达式
在MATLAB的程序结构中经常会遇到判断结构,根据某种条件的数值0或者1而得出不同的结论。在MATLAB中,能够产生这种逻辑数值0或者1的表达式分为关系表达式和逻辑表达式。
关系表达式是针对两个变量的表达式,可能是两个数值变量或者字符串变量,通过表达式之间的关系得出逻辑值0(false)或者1(true),取决于两个变量之间的关系。常见的逻辑关系如表2-2所示。
表2-2 常见的逻辑关系
![](https://epubservercos.yuewen.com/9A29A1/26581300209173206/epubprivate/OEBPS/Images/Figure-T49_1287.jpg?sign=1739258820-e1ewEb83mSOJ9RbA7utI8esb34xZ3OPZ-0-a6bb34001d7dd57bcda2233d80443fe8)
【例2-1】 在MATLAB中,使用关系运算符进行运算,便可得到相应的结果。
代码如下:
![](https://epubservercos.yuewen.com/9A29A1/26581300209173206/epubprivate/OEBPS/Images/Figure-P49_1212.jpg?sign=1739258820-teVzKWShgDRE6P4QObyG4UyYAV2SlRlM-0-b217d465183733107c458beb9fc4109d)
运行结果如下:
![](https://epubservercos.yuewen.com/9A29A1/26581300209173206/epubprivate/OEBPS/Images/Figure-P49_1238.jpg?sign=1739258820-k9Vi6lXfAaCWuYMxGf0Zu60NoN2MKzOK-0-1ca346a8396178cbc6dc400dc3c3c662)
【例2-2】 在MATLAB中,以数值矩阵(数组)为单位,进行关系表达式的运算。
代码如下:
![](https://epubservercos.yuewen.com/9A29A1/26581300209173206/epubprivate/OEBPS/Images/Figure-P49_1250.jpg?sign=1739258820-jWDd8xcBOOG6wywRDwfpJqHEsvglBzBo-0-56287195f1a6a1da1000477e84a527fc)
运行结果如下:
![](https://epubservercos.yuewen.com/9A29A1/26581300209173206/epubprivate/OEBPS/Images/Figure-P50_1295.jpg?sign=1739258820-4JBIkt6YIELL4Pvq5iCwIjTlvyQ9v1at-0-3699285d9cd7e272e5e56fac581137fb)
从以上程序代码中可以看出,一个数值矩阵或者数组可以和一个标量进行关系运算,其运算规则是将矩阵的数值依次和标量数值进行关系运算,得出相应的关系结果,返回一个逻辑矩阵;同时,同维度的矩阵也可以相互进行关系运算,运算规则是将对应数值进行关系运算,同样可以得到一个逻辑矩阵。
但是,如果将不同维度的矩阵进行关系运算,则MATLAB无法完成其关系运算,并会返回相应的错误信息,提示用户两个矩阵的维度必须一致。
在MATLAB中,字符串变量本身就是一个矩阵变量,因此关系表达式只能比较长度相同的字符串变量,否则MATLAB就会返回错误信息。