第4章 MATLAB基本编程ppt课件.ppt

第4章 MATLAB基本编程ppt课件.ppt

ID:59017617

大小:269.50 KB

页数:44页

时间:2020-09-26

第4章 MATLAB基本编程ppt课件.ppt_第1页
第4章 MATLAB基本编程ppt课件.ppt_第2页
第4章 MATLAB基本编程ppt课件.ppt_第3页
第4章 MATLAB基本编程ppt课件.ppt_第4页
第4章 MATLAB基本编程ppt课件.ppt_第5页
资源描述:

《第4章 MATLAB基本编程ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章M文件和函数句柄4-1M文件4-2程序控制结构4-3程序调试4-4函数设计4-1M文件M文件的建立与编辑1.建立M文件命令按钮命令操作2.编辑M文件文件操作命令操作M文件的类型类型特点命令文件(ScriptFile)没有输入参数,也不返回输出参数函数文件(FunctionFile)可以输入参数,也可以返回输出参数a)命令式文件1.如果要输入较多的命令,而且要经常对这些命令重复输入,利用命令文件将显得比较简单方便。2.将要输入的所有指令按顺序放到一个扩展名为“.m”的文本文件中,每次运行时只要输入M文件的文件名即可。3.在命令文件运行过程中产生的所有变量均是全局变量。例1:

2、建立一个命令文件将变量a,b的值互换,然后运行该命令文件。首先建立命令文件并以文件名exch.m存盘:clear;a=1:10;b=[11,12,13,14;15,16,17,18];c=a;a=b;b=c;ab然后在MATLAB的命令窗口中输入exch,将会执行该命令文件。函数式文件函数文件和命令文件的区别在于:命令文件的变量在文件执行完程序后仍然保留在内存中,而函数文件内定义的变量为内部变量,仅在函数文件内部起作用。函数文件的建立(1)函数文件的基本结构函数文件由function语句引导,其基本结构为:function[输出形参表]=函数名(输入形参表)注释说明部分函数体语

3、句说明:1)关于函数文件名:函数文件名与出现在文件的第一行的函数名必须相同。当两者不同时,MATLAB将忽略函数名而确认函数文件名,因此调用时使用函数文件名。2)关于注释说明部分。注释说明包括三部分内容:①H1行:紧随函数文件引导行之后以%开头的第一注释行。②帮助文本:第一注释行及之后连续的注释行。③注释:解释程序行的意义。(2)函数的调用函数调用的一般格式是:[输出实参表]=函数名(输入实参表)要注意的是,函数调用时各实参出现的顺序、个数,应与函数定义时形参的顺序、个数一致,否则会出错。函数调用时,先将实参传递给相应的形参,从而实现参数传递,然后再执行函数的功能。例3:建立一

4、个函数文件将变量a,b的值互换,然后在命令窗口调用该函数文件。首先建立函数文件fexch.m:function[a,b]=fexch(a,b)c=a;a=b;b=c;然后在MATLAB的命令窗口调用该函数文件:clear;x=1:10;y=[1,2;3,4;5,6;7,8];[x,y]=fexch(x,y)例4:编写函数文件求半径为r的圆的面积和周长。function[s,p]=fcircle(r)%FCIRCLEcalculatetheareaandperimeterofacircleofradiusr%r圆半径%s圆面积%p圆周长s=pi*r*r;p=2*pi*r;[s,p

5、]=fcircle(10)在MATLAB中,函数可以嵌套调用,即一个函数可以调用别的函数,甚至调用它自身。一个函数调用它自身称为函数的递归调用。例5:利用函数的递归调用,求n!。n!本身就是以递归的形式定义的。显然,求n!需要求(n-1)!,这时可采用递归调用。递归调用函数文件factor.m如下:functionf=factor(n)ifn<=1f=1;elsef=factor(n-1)*n;%递归调用求(n-1)!end一、顺序结构程序按程序语句或模块在执行流中的顺序逐个执行。程序模块1程序模块24-2程序控制结构1.数据的输入(input函数)调用格式为:A=input(

6、提示信息,选项);其中提示信息为一个字符串,用于提示用户输入什么样的数据。如果在input函数调用时采用's'选项,则允许用户输入一个字符串。例如,想输入一个人的姓名,可采用命令:xm=input('What''syourname?','s')2.数据的输出(disp函数)调用格式为:disp(输出项)其中输出项既可以为字符串,也可以为矩阵。注意:用disp函数显示矩阵时将不显示矩阵的名字,而且其格式更紧密,且不留任何没有意义的空行。例6:输入x,y的值,并将它们的值互换后输出。x=input('Inputxplease.');y=input('Inputyplease.

7、n');z=x;x=y;y=z;disp(x);disp(y);例7:求一元二次方程ax2+bx+c=0的根。程序如下:a=input('a=?');b=input('b=?');c=input('c=?');d=b*b-4*a*c;x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)];disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);二选择结构选择结构的语句有if语句和switch语句。条件程序模块1成立不成立程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。