MATLAB7程序设计.ppt
《MATLAB7程序设计.ppt》由会员分享,可在线阅读,更多相关《MATLAB7程序设计.ppt(54页珍藏版)》请在三一办公上搜索。
1、2023/7/7,第10章 MATLAB 7程序设计,1,第10章 MATLAB 7程序设计,教学目标 教学重点 教学过程,2023/7/7,第10章 MATLAB 7程序设计,2,教学目标,用交互式的方式来编写程序适用于命令行比较简单,输入比较方便,同时处理的问题步骤较少的情况。当需要处理重复、复杂且容易出错的问题时,可以进行控制流的程序设计,这就是M文件的编程工作方式。,2023/7/7,第10章 MATLAB 7程序设计,3,教学重点,MATLAB 7的控制流语言变量和函数的种类了解程序的调试和优化,2023/7/7,第10章 MATLAB 7程序设计,4,教学过程,M文本编辑器的基本知
2、识MATLAB 7的控制流语言变量和函数的种类程序设计的辅助函数程序的调试和优化,2023/7/7,第10章 MATLAB 7程序设计,5,1.M文本编辑器的基本知识,M文本编辑器 M文件的基本属性 M文件的组成部分 脚本式M文件 函数式M文件,2023/7/7,第10章 MATLAB 7程序设计,6,(1)M文本编辑器,M文件的语法类似于一般高级语言,是一种程序化的编程语言,但是,与传统的高级语言相比,M文件又有自己的特点。它只是一个简单的ASC型码文本文件,因此,它的语法比一般的高级语言要简单,程序也容易调试,并且有很好的交互性。,2023/7/7,第10章 MATLAB 7程序设计,7,
3、M文件的基本属性,M文件有两种,一种为脚本式(Script),一种为函数式(Function)。函数M文件必须满足一些标准,另外,它们还应该满足一些MATLAB 7的属性。主要有以下几点:函数式M文件名和出现在文件的第一行的函数名必须相同。实际上,MATLAB 7忽略了第一行的函数名,并且根据存储在硬盘上的文件名来执行函数。,2023/7/7,第10章 MATLAB 7程序设计,8,M文件的组成部分,函数式M文件的组成部分。调出Medit窗口,在里边输入如下内容:function f=fact(n)%函数的定义行%Compute a factorial value.%H1行%FACT(N)re
4、turns the factorial of N,%帮助文本%usually denoted by N!%Put simply,FACT(N)is PROD(1:N).%注释f=prod(1:n);%函数体,2023/7/7,第10章 MATLAB 7程序设计,9,M文件的组成部分及其功能,M文件的组成部分及其功能,2023/7/7,第10章 MATLAB 7程序设计,10,(2)脚本式M文件,用户可以将需要重复输入的所有命令按顺序放到一个扩展名为m的文本文件下,每次运行时只要输入该M文件的文件名即可。用户自己创建的M文件的文件名要避免与MATLAB 7的内置函数和工具箱中的函数重名,以免发生
5、内置函数被替换的情况。,2023/7/7,第10章 MATLAB 7程序设计,11,脚本式M文件举例,本脚本式M文件绘制一个正弦曲线:%此文件用于绘制【2pi,2pi】区间的正弦曲线图x=-2*pi:0.05:2*pi;y=sin(x);plot(x,y,c+)legend(正弦曲线图),2023/7/7,第10章 MATLAB 7程序设计,12,(3)函数式M文件,函数式M文件一般都要自带参数,并且有返回结果。函数式M文件的第一行都是以function开始,说明此文件是一个函数。函数式M文件中的变量都不是全局变量,仅在函数运行期间有效,函数运行完毕之后,它所定义的变量将从工作区间中清除。,2
6、023/7/7,第10章 MATLAB 7程序设计,13,函数式M文件举例,例11-4 判断某一年是否为闰年。解:调出Medit窗口,在里边输入如下内容。%该函数用于判断某一年是否为闰年%使用格式为isleapea(y),其中y是用户所要计算的年份function isleapyear(year)sign=0;if rem(year,4)=0 sign=sign+1;end,if rem(year,100)=0 sign=sign-1;end if rem(year,400)=0 sign=sign+1;end if sign=1 fprintf(%4d year is a leap year
7、.n,year)else fprintf(%4d year is not a leap year.n,year)end,2023/7/7,第10章 MATLAB 7程序设计,14,2.控制流,最简单的程序控制就是顺序结构,用户依次输入命令语句即可。MATLAB 7语言还提供了4种高级的控制结构。它们是:if-else-end结构、switch-case-otherwise-end结构、for循环和while循环。,2023/7/7,第10章 MATLAB 7程序设计,15,(1)顺序结构,顺序结构是最简单的程序结构,用户在编写好程序之后,系统将按照程序的物理位置顺次执行。a=1;b=2;c=3
8、;s1=a+bs2=s1+cs3=s2/s2,2023/7/7,第10章 MATLAB 7程序设计,16,(2)ifend语句,只有一种选择时的情况 if 表达式执行语句end,2023/7/7,第10章 MATLAB 7程序设计,17,ifend语句,有两种选择时的情况 if 表达式 执行语句1 else 执行语句2end,2023/7/7,第10章 MATLAB 7程序设计,18,ifend语句,有3种或3种以上选择时的情况 if 表达式1 表达式1为真时的执行语句1 elseif表达式2 表达式2为真时的执行语句2 elseif表达式3 表达式3为真时的执行语句3elseifelse 所
9、有的表达式都为假时的执行语句 end,2023/7/7,第10章 MATLAB 7程序设计,19,(3)switchcaseend语句,switch开关语句 case条件语句,执行语句,执行语句 case 条件语句1,条件语句2,条件语句3,执行语句,执行语句 otherwise,执行语句,执行语句 end,2023/7/7,第10章 MATLAB 7程序设计,20,(4)trycatchend,try-catch模块给用户提供了一种错误捕获机制。换句话说,利用try-catch模块,MATLAB 7编译系统发现的错误将被其捕获,用户可以控制MATLAB 7怎样对发生的错误进行处理。try 执
10、行语句1catch执行语句 2end,2023/7/7,第10章 MATLAB 7程序设计,21,(5)for循环语句,For语句是一种循环语句,可以让用户很方地实现循环操作,从而可以从容地应付大规模的循环语句。for i=表达式,执行语句,执行语句 end,2023/7/7,第10章 MATLAB 7程序设计,22,(6)while循环语句,与for循环不同,while循环的判断控制可以是逻辑判断语句,因此,它的循环次数可以是一个不定数。这样就赋予了它比for循环更广泛的用途。while表达式 执行语句end,2023/7/7,第10章 MATLAB 7程序设计,23,(7)人机交互命令,终
11、止命令break和return 继续命令continue 等待用户反应命令pause echo命令 用户输入提示命令input 请求键盘输入命令keyboard,2023/7/7,第10章 MATLAB 7程序设计,24,3.变量和函数种类,与其他语言一样,MATLAB 7的变量有输入变量、输出变量和函数内使用的变量之分,而函数也有主函数、局部函数和子函数之分,本节将介绍这些不同种类变量和函数的特点。,2023/7/7,第10章 MATLAB 7程序设计,25,(1).函数变量及其作用域,在MATLAB 7语言中,变量可以分为输入变量、输出变量和函数内使用的变量。输入变量相当于函数的入口数据,
12、也是一个函数操作的主要对象,从某种意义上来说,函数的功能在于对输入变量进行一定的操作从而实现一定的功能。函数的输入变量为局部变量,函数对输入变量的一切操作和修改如果不依靠输出变量的话,将不会影响工作区间中该变量的值。,2023/7/7,第10章 MATLAB 7程序设计,26,函数变量及其作用域,变量的输入和输出规则 局部变量 全局变量 永久变量,2023/7/7,第10章 MATLAB 7程序设计,27,变量的输入和输出规则,MATLAB 7可以有任意数量的输入和输出变量。这些参数的特性和规则如下所示:(1)函数式M文件可以没有输入和输出变量。(2)函数可以用比M文件中的函数定义行所规定的输
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB7 程序设计
链接地址:https://www.31ppt.com/p-5438887.html