二数值数组及其运算(matlab)
- 格式:ppt
- 大小:973.51 KB
- 文档页数:94
第 2 章 数值数组及向量化运算本章集中讲述两个数据类型(数值数组和逻辑数组)、两个特有概念变量(非数和空)、以及MATLAB的数组运算和向量化编程。
值得指出:本章内容是读者今后编写各种科学计算M码的基本构件。
数值数组(Numeric Array)是MATLAB最重要的数据类型数组。
在各种维度的数值数组中,二维数组为最基本、最常用。
本章对二维数组创建、标识、寻访、扩充、收缩等方法进行了详尽细腻的描述,并进而将这些方法推广到高维数组。
本章讲述的逻辑数组主要产生于逻辑运算和关系运算。
它是MATLAB 援引寻访数据、构成数据流控制条件、、编写复杂程序所不可或缺的重要构件。
数组运算是MATLAB区别于其它程序语言的重要特征,是MATLAB绝大多数函数指令、Simulink许多库模块的本性,是向量化编程的基础。
为此,本章专辟第2.2节用于阐述MATLAB的这一重要特征。
在此提醒读者注意:随书光盘mbook目录上保存着本章相应的电子文档“ch02_数值数组及向量化运算.doc”。
该文档中有本章全部算例的可执行指令,以及相应的运算结果。
2.1数值数组的创建和寻访2.1.1一维数组的创建1递增/减型一维数组的创建(1)“冒号”生成法(2)线性(或对数)定点法2其他类型一维数组的创建(1)逐个元素输入法(2)运用MATLAB函数生成法【例2.1-1】一维数组的常用创建方法举例。
a1=1:6a2=0:pi/4:pia3=1:-0.1:0a1 =1 2 3 4 5 6a2 =0 0.7854 1.5708 2.3562 3.1416a3 =Columns 1 through 81.0000 0.9000 0.8000 0.7000 0.6000 0.5000 0.4000 0.3000Columns 9 through 110.2000 0.1000 0b1=linspace(0,pi,4)b2=logspace(0,3,4)b1 =0 1.0472 2.0944 3.1416b2 =1 10 100 1000c1=[2 pi/2 sqrt(3) 3+5i]c1 =2.0000 1.5708 1.73213.0000 + 5.0000i rng defaultc2=rand(1,5)c2 =0.8147 0.9058 0.1270 0.9134 0.6324〖说明〗x1=(1:6)' , x2=linspace(0,pi,4)'y1=rand(5,1)z1=[2; pi/2; sqrt(3); 3+5i]2.1.2二维数组的创建1小规模数组的直接输入法【例2.1-2】在MATLAB环境下,用下面三条指令创建二维数组C。
(完整word版)matlab入门经典教程--第二章数值数组及其运算编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整word版)matlab入门经典教程--第二章数值数组及其运算)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整word版)matlab入门经典教程--第二章数值数组及其运算的全部内容。
第二章数值数组及其运算数值数组(Numeric Array)和数组运算(Array Operations)始终是MATLAB的核心内容。
自MATLAB5。
x版起,由于其“面向对象”的特征,这种数值数组(以下简称为数组)成为了MATALB 最重要的一种内建数据类型(Built—in Data Type),而数组运算就是定义在这种数据结构上的方法(Method)。
本章系统阐述:一、二维数值数组的创建、寻访;数组运算和矩阵运算的区别;实现数组运算的基本函数;多项式的表达、创建和操作;常用标准数组生成函数和数组构作技法;高维数组的创建、寻访和操作;非数NaN、“空”数组概念和应用;关系和逻辑操作.顺便指出:(1)本章所涉内容和方法,不仅使用于数值数组,而且也将部分地延伸使用于在其他数据结构中。
(2)MATLAB5。
x和6。
x 版在本章内容上的差异极微。
(3)MATLAB6.5版新增的两种逻辑操作,在第2。
13。
2节给予介绍。
2.1引导【例2。
1—1】绘制函数x=在1y-xe≤x时的曲线。
0≤x=0:0。
1:1y=x.*exp(-x)plot(x,y),xlabel(’x’),ylabel('y'),title(’y=x*exp(-x)’)x =Columns 1 through 70 0.1000 0。
2.4 Matlab数组及其运算本节主要内容:1 基本数组的运算2 数组函数运算3 数组逻辑运算一基本数组运算数组的建立、存储完全同于矩阵,由于计算的不同,把相同型矩阵之间的运算成为数组运算。
□数组的四则运算普通运算同矩阵的运算,另有点运算“.*”“./”“.\”,即两数组对应元素之间的运算。
□数组与常数运算1 与常数之间的数加、数减元算在运算符上可以加“.”,也可以不加“.”,加时,要把常数写在前面。
2 与矩阵的运算一致。
□数组的幂运算“.^”表示每个数组元素的幂运算。
与矩阵的幂运算不同□数组的指数运算、对数运算和开放运算分别为exp、log和sqrt,其运算实质是针对数组内部的每个元素进行。
二数组函数运算□只要把所有运算的数组当数字一样带人函数中,不需要做什么变形;□通用格式为funname(A),funname为函数名。
三数组逻辑运算□基本逻辑运算== 等于eq~= 不等于ne<小于lt>大于gt<= 小于等于le>= 大于等于ge& 逻辑与and丨逻辑或or~ 逻辑非~□关系比较的结果由0和1组成,关系满足对应值为1,否则为1.□逻辑与运算双方的对应元素都非0时,为1,否则为0逻辑或运算双方的对应元素有一非0时,为1,否则为0逻辑非运算数组对应的值为0时结果为1,否则为0□运算双方有一方为常数时,结果与数组同维,是数组元素依次与常数比较的结果。
□优先级关系先后为:比较运算、算术运算、逻辑与或非。
□逻辑关系函数any 向量的任意元素不为0则返回真all 向量的所有元素不为0则返回真xor 逻辑或非isempty 判断空矩阵isequal 判断相等矩阵isnumeric 判断数值矩阵islogical 判断逻辑数组logical 转换数值为逻辑型isnan 判断不定数isinf 判断无穷大元素isfinite 判断有限大元素find 寻找非零元素坐标abs表绝对值运算。
如下面的总结是以M文件“sin.m”为例。
1,.1表示0.1,.2表示0.22,要想在Matlab中创建一个数组,用户只需先输入一个左方括号,然后输入每个数值并用空格(或逗号)隔开,最后用一个右方括号结束数组创建。
3,Matlab中,可以通过下标来访问单个数组元素。
例如x(1)是x的第一个元素,x(2)是x的第二个元素。
为了同时访问一块数据,Matlab提供了冒号如:x(1:4)。
这样得到x数组中第1个到第4个元素,括号中的“1:4”的意思是从1开始,然后加1计数直到4。
4. x(7:end)这条命令返回x数组的第7个元素到最后一个元素。
关键字end 表示x数组的最后一个元素5.引用数组元素时,可以通过控制递增顺序和步进值。
y(3:-1:1)表示从3开始,向下减1计数,到1结束。
y(2,2,7)表示从2开始,以步长为2计数,到7结束。
6.可以随机抽取数组中一个或多个元素的值,y([8 2 9 1])。
在这里,用到了另外一个数组[8 2 9 1],并按照希望的顺序提取数组y中的元素。
提取的第1个元素是y中的第8个值,第2个元素是y中的2个值,第3个元素是y中的第9个值,第4个元素是y中的第1个值。
实际上,[8 2 9 1]本身就是一个数组,它的作用是指定抽取地址。
抽取的索引地址可以相同,同一个数允许多次调用,用户可以随意地重新排列和复制数组元素,该特性使Matlab编程更具高效性。
7.sin.m例子中x的值可以有另外两种输入方法:(1)x = (0:0.1:1)*pi(2)x = linspace(0,pi,11)。
冒号表示法使用户能够直接指定数据点之间的增量,而不用指定数据点的个数;linspace函数法则使用户能够直接指定数据点的个数,而不用指定数据点之间的增量。
这两种方式生成的数组时等间隔分布的。
8.创建对数间隔的数组,用logspace函数实现。
如logspace(0,2,11)创建从100开始到102结束,包含11个值的数组。
2.Matlab数值数组及其运算2.1引导2.2⼀维数组的创建与寻访2.3⼆维数组的创建2.4⼆维数组元素的标识2.5⼆维数组的⼦数组寻访和赋值2.6执⾏数组运算的常⽤函数2.7数组运算和矩阵运算2.8多项式的表达和创建2.9多项式运算函数2.10标准数组⽣成函数和数组操作函数2.11数组构建技巧综合2.12⾼维数组的创建2.13关系运算2.14逻辑操作2.1 引导 2.1.1 function [ output_args ] = Untitled2( input_args )x=0:0.1:1y=x.*exp(-x)plot(x,y,'-r'),xlabel('x'),ylabel('y'),title('y=x*exp(-x)')gridend运⾏效果2.2 ⼀维数组的创建与寻访 2.2.1 ⼀维数组的⼦数组寻访和赋值 2.2.1.1 ⼦数组的寻访 2.2.2 ⼦数组的赋值2.3 ⼆维数组的创建 2.3.1 直接输⼊法 2.3.2 复数数组的另⼀种输⼊⽅式2.4 ⼆维数组元素的标识 2.4.1 "逻辑1"标识1 function [ output_args ] = Untitled2( input_args )2 A = zeros(2,5);%A 两⾏五列3 A(:)=-4:5%初始化4 L=abs(A)>3%找出所有绝对值⼤于3的元素5 islogical(L)%判断是否是逻辑数组6 X=A(L)%把下标给x7 end 2.4.2 逻辑数组与⼀般双精度数组的关系和区别1 function [ output_args ] = Untitled2( input_args )2 A = zeros(2,5);%A 两⾏五列3 A(:)=-4:5%初始化4 L=abs(A)>3%找出所有绝对值⼤于3的元素5 islogical(L)%判断是否是逻辑数组6 X=A(L)%把下标给x78 Num=[1,0,0,0,1;0,0,0,0,1];9 islogical(Num) %Num不是逻辑数组10 %Y=A(Num)%只有逻辑数组才可以这样⽤,所有这样错误11 end2.5 ⼆维数组的⼦数组寻访和赋值 2.5.1 不同赋值⽅式⽰例1 function [ output_args ] = Untitled2( input_args )2 A=zeros(2,4)%A初始化为2⾏4列3 A(:)=1:8%A从1到8赋值(每列从上到下,从左到右)45 s=[2356]6 A(s)%s是A的范围从上到下7 Sa=[10203076]'%'是⽤于赋值⽤8 A(s)=Sa910 A(:,[2,4])=ones(2)%第⼆列第4列都变成111 end2.6 执⾏数组运算的常⽤函数 演⽰pow2的数组运算性质1 function [ output_args ] = Untitled2( input_args )2 A=[1:4;5:8]3 pow2(A)%2的A次⽅4 end2.7 数组运算和矩阵运算 2.7.1 两种不同转置的⽐较1 function [ output_args ] = Untitled2( input_args )2 A(:)=1:63 A=A*(1+i)4 A_A=A.'%转置5 A_M=A'%转置(不加.后⾯的复数会变号)6 end2.8 多项式的表达和创建 2.8.1 求3阶⽅阵A的特征多项式1 function [ output_args ] = Untitled2( input_args )2 A=[111213;141516;171819];3 PA = poly(A)%求特征多项式4 PPA=poly2str(PA,'s')%把特征多项式转化为表达式5 end 2.8.2 由给定向量求多项式系数向量1 function [ output_args ] = Untitled2( input_args )2 R=[-0.5,-0.3+0.4*i,-0.3-0.4*i]3 P=poly(R)%求特征向量4 PR=real(P)%求对应的系数向量5 PPR=poly2str(PR,'x')%转化为表达式6 end2.9 多项式运算函数 2.9.1 1 function [ output_args ] = Untitled2( input_args )2 %分⼦第⼀项多项式系数分别为1*s^2+0*s+2 1*s+4 1*s+13 p1=conv([1,0,2],conv([1,4],[1,1]));4 %分⼦的多项式系数为 1*s^3 + 0*s^2 + 1*s + 15 p2=[1011];6 %q,r 分别是商和余多项式7 [q,r]=deconv(p1,p2);89 cq='商多项式为 ';cr='余多项式为 '10 %转化为表达式11 disp([cq,poly2str(q,'s')]),disp([cr,poly2str(r,'s')])12 end 2.9.2 polyval 与 polyvalm的区别1 function [ output_args ] = Untitled2( input_args )2 a=[123]; %多项式为x^2+2*x+33 A=[12;34]; %定义⼀个⼆维矩阵4 polyvalm(a,A)%求结果5 %其实相当于把A这个⼆维矩阵直接替换变量x,即求 A^2+2*A+3*E 这个矩阵多项式。
Matlab数组、数组运算和矩阵运算1、数值数组matlab中数组不需要声明。
(1)对一维数值数组赋初值逐个元素输入:x=[1 2 pi/2]冒号生成:x=1:0.1:4定数线性采样法:x=linspace (a,b,n)%相当于第一个数为a,最后一个数为b,以n为采样点数等间距采样。
x=logspace(a,b,n)%相当于第一个数为10a,最后一个数为10b,以n为采样点数等间距采样。
(2)对一维数值数组的寻访x(3) %寻访第三个元素x([1 2 3]) %寻访第1,2,3个元素x(1:3) %寻访第1到3个元素x(3:-1:1) %由前三个元素倒排成子数组x(find(x>0.5)) %由大于0.5的元素构成的子数组(3)对二维数值数组赋初值逐个赋值:x=[1,2,3; 3,4,6; 7,8,9]%“;”为二维数组“行”的分隔符号,而“,”和空格为同一行元素的分隔符。
整列赋值:x(:,[4,5])=4 %第4、5列赋值为4元素重排:A=reshape(1:9,3,3)%将1到9重新排列成一个(3*3)矩阵,注意matlab是列“优先”,即先排第一列再排第二列,而不是按行来排。
(4)二维数组元素的标识和寻访“全下标”标识:A(3,5) %第3行第5列元素“单下标”标识:对于一个(m*n)维数组A中第r行第c列元素,其“单下标”表示为:A(l) %这里l=(c-1)*m+r2、数组运算和矩阵运算(1)数组运算指令含义A.'相当于conj(A'),conj的作用help一下吧……A=s把标量s赋给A的每个元素s+B标量s分别与B元素之和s-B,B-s标量s分别与B元素之差s.*A标量s分别与A元素之积s./B,B.\ss分别被B的元素除A.^nA的每个元素自乘n次A.^p对A的各个元素分别求非整数幂p.^A以p为底,分别以A的元素为指数求幂A+B对应元素相加A-B对应元素相减A.*B对应元素相乘A./BA的元素被B的对应元素除B.\A同上exp(A)以e为底,分别以A的元素为指数求幂log(A)对A的各个元素求对数sqrt(A)对A的各个元素求平方根f(A)求A各个元素的函数值A#B对应元素的关系运算,#代表关系运算符A@B对应元素的逻辑运算,@代表逻辑运算符(2)矩阵运算含义A'共轭转置s*A标量s分别与A元素之积S*inv(B)B阵的逆乘sA^nA阵为方阵时,自乘n次A^p方阵A的非整数乘方p^AA阵为方阵时,标量的矩阵乘方A+B矩阵相加A-B矩阵相减A*B矩阵相乘A/BA右除BB\AA左除Bexpm(A)A的矩阵指数函数logm(A)A的矩阵对数函数sqrtm(A)A的矩阵平方根函数funm(A,'FN')一般矩阵函数3、逻辑数组看例子就明白了:A=zeros(2,5); %预生成一个(2*5)全零数组A(:)=-4:5; %运用“全元素”方法向A赋值L=abs(A)>3 %产生一个与A同维的“0 -1”逻辑值数组islogical(L) %判断L是否逻辑值数组。
实验二MATLAB数值数组及其运算班级:电子信息工程2班学号:1004101049 姓名:王率率实验目的1.掌握数值数组的创建和寻访方法;2.理解数组运算和矩阵运算的含义;3.熟悉标准数组生成函数和数组操作函数的运用;4.熟悉两类特殊数组的应用;5.了解关系运算和逻辑运算及应用。
内容步骤在计算机上完成以下各题并进行结果验证,并按各题要求完成实验报告。
1.用2种方法生成行向量[3 5 7 9 11 13 15 17 19],并将其赋值给变量C。
写出其命令。
c=[3 5 7 9 11 13 15 17 19] %方法1c=linspace(3,19,9) %方法2c=[3:2:19] %方法32.输入A= [2 5 6; 7 1 5; 3 1 5],分别使用全下标和单下标取出元素“7”。
写出其命令。
A=[2 5 6;7 1 5;3 1 5]A(2,1) %全下标A(2) %单下标3.求矩阵[1 3;2 4]的转置矩阵、逆矩阵、矩阵的秩、矩阵的行列式值、矩阵的特征值和特征向量。
分别写出其命令和结果。
A=[1 3;2 4]B=A' %转置矩阵B1=inv(A) %逆矩阵C=rank(A) %矩阵的秩C1=det(A) %矩阵的行列式值[V,D]=eig(A) %特征值和特征向量运行结果:A = 1 32 4B = 1 23 4B1 =-2.0000 1.50001.0000 -0.5000C =2C1=-2V =-0.9094 -0.56580.4160 -0.8246D =-0.3723 00 5.37234.输入A= [2 5 6;7 1 5;3 1 5],B=[2 2 2;1 1 1; 3 3 3],在命令窗口中执行下列表达式,掌握其含义,并将运行结果写入实验报告:A(2, 3) A(:,2) A(3,:) A(:,1:2:3) A(:,3).*B(:,2) A(:,3)*B(2,:) A*B A.*B A^2A.^2 B/AB./A运行结果依次为:B=[2 2 2;1 1 1; 3 3 3]ans = 5ans = 511ans = 3 1 5ans = 2 67 53 5ans = 12515ans = 6 6 65 5 55 5 5ans = 27 27 2730 30 3022 22 22ans = 4 10 127 1 59 3 15ans = 57 21 6736 41 7228 21 48ans = 4 25 3649 1 259 1 25ans = 0.4211 0.3684 -0.47370.2105 0.1842 -0.23680.6316 0.5526 -0.7105ans = 1.0000 0.4000 0.33330.1429 1.0000 0.20001.0000 3.0000 0.60005.用MATLAB 求方程组⎪⎩⎪⎨⎧=+=+-=-10421554832z x z y x y x 的解,将命令和运行结果写入实验报告。
matlab中二维数组求和二维数组求和是在matlab中常见的操作之一。
在matlab中,数组是由矩阵或向量组成的,可以进行各种数学运算。
在二维数组求和中,我们需要将一个二维数组中的所有元素相加,然后得到一个总和。
我们需要了解如何创建一个二维数组。
在matlab中,我们可以使用语句 A = [1 2 3; 4 5 6; 7 8 9] 来创建一个3×3的二维数组A,其中分号表示换行。
也可以使用语句B = rand(4,5) 来创建一个4×5的二维数组B,其中rand函数用于生成随机数。
接下来,我们要对这些二维数组进行求和操作。
在matlab中,我们可以使用sum函数来实现二维数组求和。
对于一个矩阵A,我们可以使用语句 sum(A(:)) 来求得其所有元素的总和。
其中,A(:)表示将矩阵A展开成一个列向量,然后再进行求和操作。
对于一个二维数组B,我们可以使用语句 sum(sum(B)) 来求得其所有元素的总和。
其中,第一个sum函数表示将B的每一行相加得到一个行向量,第二个sum函数表示将该行向量中的所有元素相加得到最终的总和。
除了以上的方法,我们还可以使用循环来实现二维数组求和。
对于一个矩阵A,我们可以使用以下代码来求得其所有元素的总和:[m,n] = size(A); % 获取矩阵A的行数和列数total = 0; % 初始化总和为0for i = 1:mfor j = 1:ntotal = total + A(i,j); % 将每个元素加到总和中endend对于一个二维数组B,我们可以使用以下代码来求得其所有元素的总和:[m,n] = size(B); % 获取数组B的行数和列数total = 0; % 初始化总和为0for i = 1:mfor j = 1:ntotal = total + B(i,j); % 将每个元素加到总和中endend总的来说,二维数组求和是matlab中常见的操作之一,可以使用sum函数或循环来实现。
matlab 数值数组及其运算数值数组(Numeric Array)和数组运算(Array Operation)是Matlab的核心运算内容一、导言二、一维数组 (向量)三、二维数组(矩阵)四、高维数组五、MATLAB 的运算符一、导言1、数组的定义数组是指一组实数或复数排成的长方阵列(Array)一维的行或列 ? 向量二位数组 ? 矩阵三维的“若干矩阵的堆叠” ? 体四维更高维2、数组运算无论在数组上施加什么运算(+, -, * ,/,或函数等),该运算对数组中的每个元素都实施同样的操作。
Matlab的数组运算使计算程序简短、易读提高程序的向量化程度、提高计算效率示例x=0:0.1:1 %定义自变量的采样点取值数组y=x.*exp(-x) %利用数组运算计算各自变量采样点上的函数值plot(x,y),xlabel('x'),ylabel('y'),title('y=x*exp(-x)') %绘图4 矩阵的索引或下标矩阵 A 中,位于第 i 横列、第 j 直行的元素可表示为 A(i, j) ,i 与 j 即是此元素的下标(Subscript)或索引(Index)MATLAB 中,所有矩阵的内部表示法都是以直行为主的一维向量A(i, j) 和 A(i+(j-1)*m) 是完全一样的~m为矩阵A的列数我们可以使用一维或二维下标来存取矩阵矩阵的索引或下标可以使用矩阵下标来进行矩阵的索引(Indexing)A(4:5,2:3) -取出矩阵 A 的第四、五横列与二、三直行所形成的部份矩阵A([9 14; 10 15]) - 用一维下标的方式来达到同样目的用冒号(:), 取出一整列或一整行A(:, 5) -取出矩阵 A 的第五个直行用 end 这个保留字来代表某一维度的最大值A(:, end) - 矩阵 A 的最后一个直行可以直接删除矩阵的某一整个横列或直行A(2, :) = [] –删除A矩阵的第二列A(:, [2 4 5]) = [] - 删除 A 矩阵的第二、四、五直行二、一维数组1 一维数组的创建(1)逐个元素输入 []Column>> X = [ 1 ; 2 ; 3 ];Row>> Y = [ 1 , 2 , 3 ];>> Y = [ 1 2 3 ];逗号和分号的作用?逗号和分号可作为指令间的分隔符,matlab允许多条语句在同一行出现。
matlab 数组或运算Matlab是一种强大的数学软件,它提供了许多数组和运算功能,方便用户进行数据处理、分析和可视化。
本文将介绍一些常用的Matlab数组和运算,并探讨它们在不同领域的应用。
一、数组操作1. 创建数组在Matlab中,可以使用多种方式创建数组,如直接赋值、使用函数生成等。
例如,可以使用以下语句创建一个包含1到10的整数的数组:```matlabA = 1:10;```2. 访问数组元素可以使用索引访问数组中的元素。
Matlab中的索引从1开始,例如,可以使用以下语句访问数组A的第一个元素:```matlabA(1)```3. 修改数组元素可以通过赋值操作修改数组中的元素。
例如,可以使用以下语句将数组A的第一个元素修改为100:```matlabA(1) = 100;```4. 数组运算Matlab提供了一系列的数组运算,包括加法、减法、乘法、除法等。
例如,可以使用以下语句对数组A进行加法运算:```matlabB = A + 1;```二、常见的数组操作函数1. 数组求和可以使用sum函数对数组中的元素进行求和。
例如,可以使用以下语句计算数组A中所有元素的和:```matlabtotal = sum(A);```2. 数组平均值可以使用mean函数计算数组的平均值。
例如,可以使用以下语句计算数组A的平均值:```matlabavg = mean(A);```3. 数组最大值和最小值可以使用max和min函数分别计算数组的最大值和最小值。
例如,可以使用以下语句计算数组A的最大值和最小值:```matlabmaxValue = max(A);minValue = min(A);```4. 数组排序可以使用sort函数对数组进行排序。
例如,可以使用以下语句对数组A进行升序排序:```matlabsortedA = sort(A);```三、数组和运算的应用场景1. 数据分析在数据分析中,经常需要对大量数据进行处理和分析。
数组的算术运算运算运算符含义说明加 + 相应元素相加减 - 相应元素相减乘 * 矩阵乘法点乘 .* 相应元素相乘幂 ^ 矩阵幂运算点幂 .^ 相应元素进行幂运算左除或右除\或/ 矩阵左除或右除左点除或右点除 .\或./ A的元素被B的对应元素除【例】数组加减法 >>A = rand(3); >>B = rand(3); >>A+B, A-B, A*B >>A/B, A\B 【例】点幂“.^”>>a=1:6>>a=a.^2>>b=reshape(a,2,3) >>b=b.^2关系运算MATLAB提供了6种关系运算符:<、>、<=、>=、==、~ =(不等于)关系运算符的运算法则:1、当两个标量进行比较时,直接比较两数大小。
若关系成立,结果为1,否则为0。
2、当两个维数相等的矩阵进行比较时,其相应位置的元素按标量关系进行比较,并给出结果,形成一个维数与原来相同的0、1矩阵。
3、当一个标量与一个矩阵比较时,该标量与矩阵的各元素进行比较,结果形成一个与矩阵维数相等的0、1矩阵。
【例】建立5阶方阵A,判断其元素能否被3整除。
A = [24, 35, 13, 22, 63; 23, 39, 47, 80, 80; ...90, 41, 80, 29, 10; 45, 57, 85, 62, 21; 37, 19, 31, 88, 76] P = rem(A,3)==0 %被3除,求余逻辑运算Matlab提供了3种逻辑运算符:&(与)、|(或)、~(非)逻辑运算符的运算法则:1、在逻辑运算中,确认非零元素为真(1),零元素为假(0)。
2、当两个维数相等的矩阵进行比较时,其相应位置的元素按标量关系进行比较,并给出结果,形成一个维数与原来相同的0、1矩阵;3、当一个标量与一个矩阵比较时,该标量与矩阵的各元素进行比较,结果形成一个与矩阵维数相等的0、1矩阵;4、算术运算优先级最高,逻辑运算优先级最低。