第二章 MATLAB程序设计基础.ppt
《第二章 MATLAB程序设计基础.ppt》由会员分享,可在线阅读,更多相关《第二章 MATLAB程序设计基础.ppt(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二章 MATLAB程序设计基础matlab的工作方式:交互式;的工作方式:交互式;M文件方式。文件方式。M文件的作用:在文件的作用:在command window中输入已编辑保存中输入已编辑保存的的M文件名或函数,则自动搜索该文件,找到则按规定的计算文件名或函数,则自动搜索该文件,找到则按规定的计算任务以解释的方式逐一执行语句任务以解释的方式逐一执行语句。1 1信控学院电子教研室信控学院电子教研室 2.1 M文件的创建创建创建M文件文件2 2信控学院电子教研室信控学院电子教研室 2.2非函数文件(命令文件)一般来说,命令文件用于把很多需要在命令窗口输入的一般来说,命令文件用于把很多需要在命令
2、窗口输入的命令放在一起,以便于修改;命令放在一起,以便于修改;由于命令文件没有输入和输由于命令文件没有输入和输出参数,只是一些命令行的组合,所以命令文件比函数文件更出参数,只是一些命令行的组合,所以命令文件比函数文件更简单。命令文件可对工作空间中的变量进行操作,也可生成新简单。命令文件可对工作空间中的变量进行操作,也可生成新的变量。即使命令文件运行结束,其运行过程中所产生的变量的变量。即使命令文件运行结束,其运行过程中所产生的变量仍保留在工作空间中,直到关闭仍保留在工作空间中,直到关闭matlab或用相关删除命令。或用相关删除命令。例:x=0:pi/100:2*pi;y1=cos(x);y2=
3、sin(x);plot(y1,y2);end3 3信控学院电子教研室信控学院电子教研室 2.3函数文件一、函数文件的格式一、函数文件的格式函数文件一般用于把许多重复的程序段封装起来,使程函数文件一般用于把许多重复的程序段封装起来,使程序更加简洁。序更加简洁。例:function y=mymean(x);%该程序用于计算矢量中元素的平均值该程序用于计算矢量中元素的平均值%x为输入参数,代表输入的矢量为输入参数,代表输入的矢量%y为输出参数,代表矢量中元素的平均值为输出参数,代表矢量中元素的平均值%如果输入不是向量,则返回错误信息如果输入不是向量,则返回错误信息m,n=size(x);%判断输入是
4、否为矢量判断输入是否为矢量if(m=1)|(n=1)|(m=1&n=1)%如果输入不是矢量,显示出错信息如果输入不是矢量,显示出错信息 error(输入输入x必须是向量必须是向量);endy=sum(x)/length(x);4 4信控学院电子教研室信控学院电子教研室 1、函数定义、函数定义function y=ymean(x)functiony1,y2,=FN(x1,x2,)2、帮助文本、帮助文本3、函数体、函数体2、注释、注释二、函数文件参数个数的检查二、函数文件参数个数的检查narginnargout确定函数被调用时,输入、输确定函数被调用时,输入、输出参数的个数,函数体中可以根据输入参
5、数个数的不同出参数的个数,函数体中可以根据输入参数个数的不同而执行不同的操作。而执行不同的操作。注意:可以用任何编辑器编写m文件当编写函数文件时,其文件名必须与函数名一致5 5信控学院电子教研室信控学院电子教研室 例:function c=testarg(a,b)if(nargin=1)c=a.2;elseif(nargin=2)c=a+b;end6 6信控学院电子教研室信控学院电子教研室 例:用命令文件和函数文件完成相同的任务:求所有小于2000且为2的整数次幂的正整数。A:用命令文件的方式%求小于2000且为2的整数次幂的正整数f(1)=2;k=1;while f(k)1000f(k+1)
6、=f(k)*2;k=k+1;endf,k7 7信控学院电子教研室信控学院电子教研室 B、用函数文件的方式实现function f=tt(n)%求小于任何正整数且为2的整数次幂的正整数%c=tt(n),n可取任意正整数f(1)=2;k=1;while f(k)n/2f(k+1)=f(k)*2;k=k+1;endf8 8信控学院电子教研室信控学院电子教研室 2.4、全局变量和局部变量一、什么是全局与局部变量?一、什么是全局与局部变量?二、全局变量的定义二、全局变量的定义global BEG ENDExample:function s=mean1global k=BEG:END;s=sum(k)调用
7、如下:调用如下:global BEG END;BEG=1;END=10;S1=mean1;9 9信控学院电子教研室信控学院电子教研室 例:funciton all=weight_add(x,y)%add two variable with different weight.global alpha betaall=alpha*x+beta*y;在命令窗口内键入:global alpha betaalpha=1beta=2all=weight_add(1,1);1010信控学院电子教研室信控学院电子教研室 2.5程序控制流程语句一、循环控制一、循环控制1、for循环循环调用格式:fort=表达式
8、1:表达式2:表达式3循环体end注意:1)步长可正可负2)内部允许嵌套,for与end必须配对3)在循环体内改变t值不影响循环次数,但对表达式有影响2)若表达式为矩阵则循环列次1111信控学院电子教研室信控学院电子教研室 例1:for n=1:5例2s=0;for m=1:nfor i=1:2:99r(n,m)=m*n;s=s+i;endend end例3 i=1:3 例2 for I=1:3例5 a=1 3 5;2 6 8 x(I)=I I=2for I=a I=2 x(I)=Ix(I)=aendendend1212信控学院电子教研室信控学院电子教研室 、while循环语句循环语句调用格式
9、while 表达式语句体end注意:1)while必须与end成对2)当表达式计算对象为矩阵时,矩阵的所有值均为真时才执行3)循环量在循环体中增减1313信控学院电子教研室信控学院电子教研室 例1:求级数和 s=1+1/2+1/3+.+1/100s=0n=1;while n=100s=s+1/n;n=n+1;end例2:找阶乘超过10100的最小数n=2;while prod(1:n)1.e100n=n+1;end1414信控学院电子教研室信控学院电子教研室 二、条件控制语句二、条件控制语句1、if条件语句条件语句matlab中,if条件语句的功能是:如果满足某个条件则执行一条或一组语句,否则
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二章 MATLAB程序设计基础 第二 MATLAB 程序设计 基础
限制150内