资源描述
单击以编辑,母版标题样式,单击以编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击以编辑,母版标题样式,单击以编辑母版文本样式,第二级,第三级,第四级,第五级,*,MATLAB,软件要点,数学运算符号及标点符号,(1,),MATLAB,命令后,逗号(,或,无标点符号)、分号,作用:,逗号(,或,无标点符号):,显示命令结果;,分号:,抑制显示结果。,(2,)“,%,”,:注释文字标志,.,数学函数,函数文件扩展名:*,.,M,格式:,function,因变量名,=,函数名(自变量名),必须通过具体的运算获得,函数值,并赋给因变量。,M,文件,M,文件建立方法,例:定义函数,f(x,1,x,2,)=100(x,2,-x,1,2,),2,+(1-x,1,),2,function,f=fun(x),f=100*(x(2)-x(1)2)2+(1-x(1)2,1.,建立,M,文件:,fun.m,MATLAB(fun),2.,可直接使用函数,fun.m,例如:计算,f(1,2),只需在,Matlab,命令窗口键入命令:,x=1,2,fun(x),返回,1,、创建简单的数组,数 组,MATLAB(shuzu1),x=a,b,c,d,e,f,创建包含指定元素的行向量,x=first:last,创建从,first,开始,加,1,计数,到,last,结束的行向量,x=first:increment:last,创建从,first,开始,加,increment,计数,,last,结束的行向量,2,、数组元素的访问,MATLAB(shuzu2),(3),直接使用元素编址序号,:,x(a b c d),表示提取数组,x,的第,a、b、c、d,个元素构成一个新的数组,x(a),x(b),x(c),x(d)。,(2),访问一块元素,:,x(a:b:c),表示访问数组,x,的从第,a,个元素开始,以步长为,b,到第,c,个元素(但不超过,c),b,可以为负数,,b,缺损时为,1。,(1,),访问一个元素,:,x(i),表示访问数组,x,的第,i,个元素。,3,、数组的方向,行向量:,数组是一行数列,按行方向分布;,列向量:,数组是一行数列,按,l,列方向分布。,相同点与不同点:,数组操作和运算方式一样,但结果的显示形式不同。,产生列向量的方法(两种):,直接产生,例,c=1;2;3;4,转置产生,例,b=1,2,3,4;c=b,说明:以,空格,或,逗号,分隔的元素指定的是不同列的元素,以,分号,分隔的元素指定了不同行的元素。,4,、数组的运算,(,1,)标量,-,数组运算,数组对标量的加、减、乘、除、乘方是数组的每个元素对该标量施加相应的加、减、乘、除、乘方运算,.,设:,a=a,1,,a,2,,a,n,,c=,标量,则:,a+c=a,1,+c,a,2,+c,a,n,+c,a*c=c*a=a.*c=c.*a=a,1,*c,a,2,*c,a,n,*c,a/c=,a./c=a,1,/c,a,2,/c,a,n,/c(,右除),c./a=c/a,1,,c/a,2,,c/a,n,(,右除),a.c=a,1,c,a,2,c,a,n,c,c.a=ca,1,,ca,2,,ca,n,ac,ca(,错误),MATLAB(shuzu3),三、矩 阵,逗号,或,空格,作用:分隔某一行的元素。,分号,作用:区分不同的行。,Enter,键作用之一:输入矩阵时,按,Enter,键开始一新行。,注意:输入矩阵时,严格要求所有行有相同的列,。,例,m=1 2 3 4;5 6 7 8;9 10 11 12,p=1 1 1 1,2 2 2 2,3 3 3 3,1,、矩阵的建立,d=eye(m,n),产生一个,m,行、,n,列的单位矩阵,d=eye(n),产生一个,n,阶的单位方阵,c=ones(m,n),产生一个,m,行、,n,列的元素全为,1,的矩阵,c=,ones(n),产生一个,n,阶元素均为,1,的方阵,b=zeros(m,n),产生一个,m,行、,n,列的零矩阵,b=zeros(n),产生一个,n,阶的零方阵,a=,产生一个空矩阵,当对一项操作无结果时,返回空矩阵,空矩阵大小为零。,特殊矩阵建立:,MATLAB(matrix1),2,、矩阵中元素的操作,MATLAB(matrix2),(1,)矩阵,A,的第,r,行:,A(r,:),(2,)矩阵,A,的第,j,列:,A(:,j),(4,)取矩阵,A,的第,i,1,i,2,行、第,j,1,j,2,列构成新矩阵:,A,(,i,1,:i,2,,j,1,:j,2,),(5,)逆序提取矩阵,A,的第,i,1,i,2,行,构成新矩阵:,A,(,i,2,:-1:i,1,,:),(6,)逆序提取矩阵,A,的第,j,1,j,2,列,构成新矩阵:,A,(,:,j,2,:-1:j,1,),(7,)删除,A,的第,i,1,i,2,行,构成新矩阵,:,A(i,1,:i,2,,:)=,(8,)删除,A,的第,j,1,j,2,列,构成新矩阵,:,A,(,:,j,1,:j,2,)=,(9,)将矩阵,A,和,B,拼接成新矩阵:,A,B;A;B,(3,)依次提取矩阵,A,的每一列,将,A,拉伸为一列向量:,A(:),3,、矩阵运算,MATLAB(matrix3),矩阵加法:,A+B,矩阵乘法:,A*B,方阵行列式:,det,(A),方阵逆:,inv(A),方阵特征值、特征向量:,V,D=,eig,A,返回,关系与逻辑运算,1,、关系操作符,2,、逻辑运算符,控制流,例 对,n=1,2,10,求,x,n,=,的值,MATLAB(for,example,),1、,for,循环:允许一组命令以固定的和预定的次数重复,for x=array,commands,end,for,和,end,语句之间的命令串,commands,按数组(,array),中的每一列执行一次。每一次迭代中,,x,被指定为数组的下一列,即在第,n,次循环中,,x=array(:,n),while expression,commands,end,只要在表达式,(,expression),里的所有元素为真,就执行,while,和,end,语句之间的命令串,commands。,2、,While,循环,与,for,循环以固定次数求一组命令相反,,while,循环以不定的次数求一组语句的值。,MATLAB(while,example,),例:设银行年利率为,11.25%,。将,10000,元钱存入银行,问多长时间会连本带利翻一番?,3、,If-Else-End,结构,(,1,)一个选择的一般形式是:,if expression,commands,end,如果在表达式,(,expression),里的所有元素为真,就执行,if,和,end,语句之间的命令串,commands。,MATLAB(fun1),(2,)三个或更多的选择的一般形式:,if (expression1),commands1,elseif,(expression2),commands2,elseif,(expression3),commands3,elseif,else,commands,end,MATLAB,(fun2),返回,对以下问题,编写,M,文件:,1、用起泡法对,10,个数由小到大排序,.,即将相邻两个数比较,将小的调到前头。,2、编程求,3、有一函数 ,写一程序,输入自变量的值,输出函数值。,实验作业,返回,谢 谢!,
展开阅读全文