一维数组及其应用.ppt
《一维数组及其应用.ppt》由会员分享,可在线阅读,更多相关《一维数组及其应用.ppt(66页珍藏版)》请在三一办公上搜索。
1、一维数组及其应用,一、一维数组简介二、创建一维数组三、一维数组的访问和赋值四、数组运算五、与一维数组相关的一些常用函数六、一维数组在二维绘图中的应用七、一维数组在向量运算中的应用八、一维数组在一元多项式运算中的应用,n个元素排成一行,又称为行向量(row vector)常被 看作为 1 X n 矩阵(二维数组),1、行数组,一、一维数组简介,n个元素排成一列,又称为列向量(column vector),常看作为 n X1 矩阵(二维数组)在Matlab中提到向量,一般都是指的列向量,2、列数组,一个数,称为标量,在Matlab中看作为 1 X 1 矩阵(二维数组),3、标量(scalar),M
2、atlab中,标量和向量一般用小写字母表示,a=,在matlab中,使用a(1)和a(1,1)都可以访问变量a,整个数组放在方括号里行数组元素用空格或逗号分隔 x=2,pi/2,sqrt(3),3+5i 列数组元素用分号分隔,分号起换行 y=2;pi;3/4;j 标点符号一定要在英文状态下输入,二、创建一维数值数组,1、用方括号 创建一维数组,2、用 由小数组生成大数组,a=1,3 b=2,4 c=3;5,d=a,a f=d,b,g=c;c h=g;g,(1)执行如下赋值语句:,(2)然后执行如下赋值语句:,此时:d=?f=?,此时:g=?h=?,(3)再执行如下赋值语句:,x=方括号内无字符
3、,或只包含空格,则生成空数组。此时在matlab内部生成一个double类型的变量x,其内容为空,占用0字节。空数组在进行数组并置操作(二个小数组合并为一个大数组)时,经常用到。,3、用 生成空数组,x=a=2,4 b=3,5,x=x,a x=x,b,(1)执行如下赋值语句:,(2)然后执行如下赋值语句:,此时:x=?,4、用冒号:创建一维数组,x=a:b,x=a:inc:b,生成如下数组x=a,a+inc,a+2*inc,a,b必须为实数,若未提供inc的数值,则 inc=1,a是数组x中的第一个元素,b不一定是数组x的最后一个元素。若inc取的不合适,可能会生成空数组。,x=1:10 y=
4、10:-2:-10 z=1:2:99,2:2:100 w=2:3:-10,x=?y=?z=?w=?,5、用linspace()函数创建一维数组,x=linspace(a,b),x=linspace(a,b,n),x=linspace(0,8,17)y=linspace(1+i,4+4*i,7),在a和b之间,均匀生成 n(未提供n时,n=100)个数据,包括a和b在内。,a,b可以为复数,若a,b为实数,等效于:,执行如下赋值语句后,x=?y=?,6、用logspace()函数创建一维数组,x=logspace(a,b),x=logspace(a,b,n),x=logspace(a,pi,n)
5、,先在a和b之间均匀生成n个数据,包括a和b,然后以这n个数据为指数,生成一维数组x。,例:x=logspace(1,2,6)生成的数组为:x=101,101.2,101.4,101.6,101.8,102=10.0000,15.8489,25.1189,39.8107,63.0957,100.0000,三、一维数组的访问和赋值,b=x(end)end是数组x的最后一个元素的下标引用数组 x 中的最后一个元素,将其赋值给变量 b,c=x(8)会出现什么结果?,1、引用一维数组中的单个元素,Matlab中数组元素的下标从 1 开始,x=1:5k=2a=x(k)引用数组 x 中的第 k 个元素,将
6、其赋值给变量 a,2、一维数组中单个元素的赋值,x=1:5a=1.5k=3x(k)=0将 0 赋值给数组 x 中的第 k 个元素x(end)=a将 a 赋值给数组 x 中的最后一个元素,x(8)=6.5 会出现什么结果?,3、引用一维数组中的子数组,引用一维数组x中的第2、5、9个元素,将其赋值给变量 a,x=linspace(1,5)a=x(2,5,9),b=x(end:-1:1)c=x(1:2:end)d=x(2:2:end),b=?c=?d=?,x=linspace(1,5)s=2,5,9a=x(s),4、一维数组中子数组的赋值,将2、7分别赋值给x的第1、4个元素,x=linspace
7、(1,5)x(1,4)=2,7,x=linspace(1,5)s=1,4a=2,7x(s)=a,5、利用空数组进行赋值可以修改数组的大小,x=10:10:70 x(2)=,此时:x=?,x(2,4)=,此时:x=?,(2)再执行如下赋值语句:,(1)执行如下赋值语句:,四、数组运算,数组运算是Matlab软件定义的运算规则,其目的是为了数据管理方便、操作简单、指令形式自然和执行计算的有效。无论在数组上施加什么运算(加减乘除或函数),总认定那种运算对被运算数组中的每个元素(Element)进行运算。,1、一维数组的转置运算,x.x,对x做转置(行列,列行)对x做共轭转置,若x的元素均为实数,则x
8、.与x的结果相同,y=x.,对数组x做转置运算,将运算结果赋值给变量y,内存中数组x的内容并没有任何变化。,x1=(1:10).y1=(1:10),x2=linspace(i,10*i).y2=linspace(i,10*i),(1)两个一维数组之间的数学运算,x+y:加,对应位置的数组元素相加x-y:减,对应位置的数组元素相减x.*y:点乘,对应位置的数组元素相乘x./y:右点除,对应位置的数组元素相除x.y:左点除x.y:点幂,对应位置的数组元素做幂运算,一维数组x、y 维数相同 时,可以进行如下如下的数组运算:,运算结果为与x、y同维的数组,2、一维数组的数学运算,(2)一维数组与标量
9、之间的数学运算,x+c:x的每个元素加cx-c:x的每个元素减cx.*c 或 x*c:x的每个元素乘c,x./c 或 x/c:x的每个元素除以cx.c 或 xc:c除以x的每个元素x.c:点幂,x的每个元素做幂运算c.x:点幂,c做幂运算,运算结果为与x同维的数组,x为一维数组,c为一个数(标量),x和c之间可以进行:,练习:试写出下列matlab语句的输出结果,并在matlab中进行验证。,a=1,1,1 b=1,0,0c=0,0,0 d=(a+b).*(a-b)e=(d+1)+(d-1)*if=e./e+e.eg=b.d+d.b,(1)两个一维数组之间的关系运算,进行比较的两个数组必须维数
10、相同,比较在两数组相同位置上的元素间进行,返回一个由0和1组成的“逻辑数组”。,3、一维数组的关系运算,(2)一维数组和标量之间的关系运算,标量可以与任何维数组进行比较。比较在此标量与数组每个元素之间进行,因此比较结果与被比数组同维,返回一个由0和1组成的“逻辑数组”。,(3)关系运算中的注意事项,比较两个浮点数是否相等时需要注意,由于浮点数的存储时的误差的存在,在程序设计中要避免直接比较两个浮点数是否相等,而是采用大于、小于的比较运算将待确定值限制在一个满足需要的区间之内。,比较两个数是否相等的关系运算符是“=”,单个的等号“=”是变量赋值符号。,不等于的关系运算符是“=”,不要与 C 语言
11、的不等于符号“!=”混淆。,3x7这样的数学表达式必须用逻辑“与”运算才能正确表示。,a=0,1,2,0,3,b=4,5,0,0,6,c=7,在逻辑表达式中,作为输入的任何非 0 实数都被看作是“逻辑真”,只有 0 才被认为是“逻辑假”。,标量(一个数)可以与任何维数组进行逻辑运算。运算在标量与数组每个元素间进行。,当两个数组进行逻辑运算时,参与运算的数组必须维数相同,运算在两数组相同位置上的元素间进行。,逻辑运算可以在标量与标量,数组与数组,标量与数组间进行,4、一维数组的逻辑运算,5、逻辑数组用作“逻辑索引”,逻辑索引:通过逻辑数组 L 中“逻辑1”所在的位置,指出数组 A 中元素的的位置
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数组 及其 应用
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5644455.html