Matlab运算符的详细解读

在MATLAB中,提供了丰富的运算符,运算主要包括算数运算、关系运算和逻辑运算。

一、算数运算符

     分为标量和数组运算和矩阵运算。需要注意:对于a/b,是a除以b,对于a\b,是b除以a。在MATLAB中,采用符号^表示乘方运算,采用 log2()计算对数。

MATLAB 的运算符_MATLAB

MATLAB 的运算符_浮点数_02

例子:

>> a=20;
>> b=15;
>> c1=a*b     %乘法
c1 =
   300
------------------------------------------
>> c1=a/b     %右除法
c1 =
    1.3333
------------------------------------------
>> c3=a\b     %左除法
c3 =
    0.7500
------------------------------------------
>> c4=2^20     %乘方
c4 =
     1048576
------------------------------------------
>> c5=log2(c4)     %对数

c5 =
    20
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.

二、关系运算符(返回值是逻辑型logical)

MATLAB 的运算符_运算符_03

例子:

>> a=randn(3,5)      %randn()产生由随机数组成的矩阵
a =
   -0.2050    1.4090   -1.2075    0.4889   -0.3034
   -0.1241    1.4172    0.7172    1.0347    0.2939
    1.4897    0.6715    1.6302    0.7269   -0.7873
------------------------------------------
>> b1=a>=0.3    %大于等于
b1 =
  3×5 logical 数组

   0   1   0   1   0
   0   1   1   1   0
   1   1   1   1   01.2.3.4.5.6.7.8.9.10.11.12.13.
   
   登录后复制
------------------------------------------
>> b2=lt(a,0.7)    %小于
b2 =
  3×5 logical 数组

   1   0   1   1   1
   1   0   0   0   1
   0   1   0   0   1
------------------------------------------
>> b2=b1~=b2     %不等于
b2 =
  3×5 logical 数组

   1   1   1   0   1
   1   1   1   1   1
   1   0   1   1   1
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.

另,对于浮点数的比较,因为浮点数在存储时存在相对误差。在程序中,最好不要直接比较两个浮点数是否相等,而是通过两个浮点数的差是否小于某个特别小的数来判断是否相等。

例子:比较两个浮点数是否相等。

>> format long;   %改变数据显示的位数
>> a=3.1415926  
a =
   3.141592600000000
----------------------------------------------------------------
>> c1=a==pi    %直接进行比较,采用关系运算符“==”,则两个浮点数不相等
c1 =
  logical
   0
----------------------------------------------------------------
>> c2=abs(a-pi)<1e-5       %比较差值是否小于 1e-5,是则相等
c2 =
  logical
   1
1.2.3.4.5.6.7.8.9.10.11.12.13.14.

三、逻辑运算符

MATLAB的逻辑运算分为三类,分别是:逐个元素的逻辑运算、快速逻辑运算、逐位逻辑运算。

(一)逐个元素的逻辑运算


运算符函数说明
&and逻辑与(单目)
|or逻辑或(单目)
~not逻辑非(双目)
xor逻辑异或

(二)快速逻辑运算


运算符说明
&&快速逻辑与,当第一个操作数为假时,直接返回假,否则与 & 相同
||快速逻辑或,当第一个操作数为真时,直接返回真,否则与 | 相同

(三)逐位逻辑运算


函数函数说明
bitand(a,b)逐位逻辑与
bitor(a,b)逐位逻辑或
bitcmp(a,b)逐位逻辑非
bitxor(a,b)逐位逻辑异或

四、运算符的优先级

MATLAB 的运算符_运算符_04

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空