4.7 数组的四则运算
数组运算是从数组的单个元素出发,针对每个元素进行运算。在MATLAB中,一维数组的基本算术运算有+(加)、-(减)、.∗(乘)、./(左除)、.\(右除)和^(乘方)等。
1. 数组的加减运算
假如有两个数组A和B,则可以由A+B和A-B实现数组的加减运算。运算规则是若数组A和B维数相同,则可以执行加减运算;如果A和B维数不相同,则MATLAB将给出错误信息,提示用户两个数组的维数不匹配。
【例4.7】 数组的加法和减法。
clear all; A=[1 2 3 4 5] B=[1,2,3,4,5] C=A-B D=A+B E=A+100 X=[3 4 5 6] A-X
运行后输出结果如下:
在程序中,进行数组的加法和减法及数组和常数的加法。如果数组维数不相同,MATLAB将给出错误提示信息。
2. 数组的乘除运算
在MATLAB中,数组的乘法和除法分别用.∗(乘)、./(左除)、.\(右除)表示。若数组A和B维数相同,则数组的乘法表示数组A和B对应元素相乘,数组的除法表示数组A和B对应元素相除。如果A和B维数不相同,则MATLAB将给出错误提示信息,提示用户两个数组A和B的维数不匹配。数组A和B相乘的运算规则如下:
•当参与相乘运算的两个数组A和B维数相同时,运算为数组的相应元素相乘,计算结果是与参与运算数组同维的数组。
•当参与运算的A和B有一个是标量时,运算是标量与数组的每一个元素相乘,计算结果是与参与运算数组同维的数组。
数组A和B相除的运算规则如下:
•当参与相除运算的两个数组A和B维数相同时,运算为数组的相应元素相除,计算结果是与参与运算数组同维的数组。
•当参与运算的A和B有一个是标量时,运算是标量和数组的每一个元素相除,计算结果是与参与运算数组同维的数组。
•右除和左除的关系为A./B=B.\A,其中A是被除数,B是除数。
【例4.8】 数组的乘法。
clear all; A=[1 2 3 4 5] B=[0,1,3,5,2] C=A.*B %数组的点乘 D=A*3 %数组和常数的乘法
运行后输出结果如下:
A= 1 2 3 4 5 B= 0 1 3 5 2 C= 0 2 9 20 10 D= 3 6 9 12 15
在程序中,两个数组相乘时,是对应元素相乘,得到和原数组同维的数组。当数组和一个数相乘时,用该数乘以数组中的每一个元素。
【例4.9】 数组的除法,代码如下:
clear all; A=[1 2 3 4 5] B=[0,1,3,5,2] C=A./B %数组和数组的左除 D=A./3 %数组和常数的除法 E=A.\B %数组和数组的右除 F=B.\A
运行后输出结果如下:
在程序中,两个数组相除时,是数组在对应元素相除。右除和左除的关系为:A./B=B.\A。如果除数为0,则结果为无穷大(inf)。