第五讲MATLAB程序设计PPT课件_第1页
第五讲MATLAB程序设计PPT课件_第2页
第五讲MATLAB程序设计PPT课件_第3页
第五讲MATLAB程序设计PPT课件_第4页
第五讲MATLAB程序设计PPT课件_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MATLAB程序设计一 M文件二 程序控制结构三 程序调试 1MATLAB的工作模式 指令驱动模式 通常matlab以指令驱动模式工作 即在matlab窗口下当用户输入单行指令时 matlab立即处理这条指令 并显示结果 也就是matlab命令行方式 命令行操作时 matlab窗口只允许一次执行一行上的一个或几个语句 一 M文件 M文件模式将matlab语句构成的程序存储成以m为扩展名的文件 然后再执行该程序文件 这种工作模式称为程序文件模式 程序文件不能在命令窗口下建立 因为命令窗口只允许一次执行一行上的一个或几个语句 用MATLAB语言编写的程序 称为M文件 2M文件 1 M文件的创建和打开 m文件的类型是普通的文本文件 可以使用系统认可的文本文件编辑器来建立m文件 如windows的记事本和word等 用matlab自带的编辑器来编制m文件 命令文件 将用户在MATLAB环境下直接输入的多条语句或者命令 存放为 m后缀的文件 在命令行键入文件名 来替代在命令窗口输入多条语句 一次执行成批命令 函数文件 它是有特定书写规范的M文件 必须有定义行 M文件根据调用方式的不同分为 命令文件 脚本文件 函数文件 2 M文件的分类 3 M文件格式 函数文件 1 定义行function返回变量 函数名 输入变量 2 注释说明语句段3 函数体 例编写函数文件求半径为r的圆的面积和周长 fcircle m 区别 1 命令文件没有定义行 函数文件必须有定义行 2 命令式文件没有输入和输出变量 函数文件有输入和输出变量 3 命令式文件运行中可以调用工作空间中的数据 运行中产生的变量出现在工作空间中 函数式文件不能调用工作空间中的数据 运行中产生的变量不出现在工作空间中 4 命令文件可以直接运行 函数文件不能直接运行 只能调用 1 函数m文件第一行必须以单词function作为引导词 表示该M文件是一个函数文件 必须遵循如下形式 function 因变量 函数名 自变量 2 函数名的命名规则与变量名相同 m文件的文件名必须是 m 3 程序中的变量均为局部变量 不保存在工作空间中 其变量只在函数运行期间有效 注意问题 1 局部变量和全局变量局部变量只存在于单个函数工作空间 它与其它函数是隔离的 函数文件的内部变量是局部的全局变量存在整个workspace工作空间 所有的函数都可以对其进行调用和修改 全局变量用global命令定义 格式为 global变量名 3 函数文件相关的概念 例全局变量应用示例 先建立函数文件wadd m 该函数将输入的参数加权相加 调用第二个函数文件cossin m 注意 程序设计中 全局变量固然可带来某些方便 但却破坏了函数对变量的封装 降低了程序的可读性和可靠性 不提倡用全局变量 2 函数参数的可调性 在调用函数时 MATLAB用两个永久变量nargin和nargout分别记录调用该函数时的输入实参和输出实参的个数 在函数文件中包含这两个变量 就可以准确地知道该函数文件被调用时的输入输出参数个数 从而决定函数如何进行处理 例nargin用法示例 exnargin mnargindemo m 3 matlab的数据文件 mat mat文件是matlab以标准二进制格式保存的数据文件 可将工作空间中有用的数据变量保存下来 mat文件的生成和调用是由函数save和load完成的 二 程序控制结构 顺序结构选择结构循环结构 1 顺序结构 数据的输入输出 1 数据的输入 input命令 从键盘输入数据该函数的调用格式为 A input 提示信息 选项 选项用于提示用户输入什么类型的数据 2 数据的输出 disp命令 显示器输出数据其调用格式为disp 输出项 其中输出项既可以为字符串 也可以为矩阵 例输入x y的值 并将它们的值互换后输出 exdisp m 3 程序的暂停 暂停程序的执行可以使用pause函数其调用格式为 pause 延迟秒数 如果省略延迟时间 直接使用pause 则将暂停程序 直到用户按任一键后程序继续执行 若要强行中止程序的运行可使用Ctrl C命令 2 选择结构 1 条件分支语句 if语句在MATLAB中 if语句有3种格式 1 单分支if语句 if条件语句组end 2 双分支if语句 if条件语句组1else语句组2end 3 多分支if语句 if条件1语句组1elseif条件2语句组2 elseif条件m语句组melse语句组nend exif m 2 分支循环语句 switch语句switch表达式case表达式1语句组1case表达式2语句组2 case表达式m语句组motherwise语句组nend exswitch m 3 try语句语句格式为 try语句组1catch语句组2endtry语句先试探性执行语句组1 如果语句组1在执行过程中出现错误 则将错误信息赋给保留的lasterr变量 并转去执行语句组2 例 矩阵乘法运算要求两矩阵的维数相容 否则会出错 先求两矩阵的乘积 若出错 则自动转去求两矩阵的点乘 extry m 3 循环结构 1 硬循环语句 for语句for语句的格式为 for循环变量循环体语句end 例 已知 当n 100时 求的值 程序如下 exfor m 2 条件循环语句 while语句while语句的一般格式为 while 条件 循环体语句end 例从键盘输入若干个数 当输入0时结束输入 求这些数的平均值和它们之和 exwhile m 3 循环的嵌套如果一个循环结构的循环体又包括一个循环结构 就称为循环的嵌套 或称为多重循环结构 例17若一个数等于它的各个真因子之和 则称该数为完数 如6 1 2 3 所以6是完数 求 1 500 之间的全部完数 exforif m 4 break语句和continue语句它们一般与if语句配合使用 break语句用于终止循环的执行 当在循环体内执行到该语句时 程序将跳出循环 继续执行循环语句的下一语句 continue语句控制跳过循环体中的某些语句 当在循环体内执行到该语句时 程序将跳过循环体中所有剩下的语句 继续下一次循环 例 求 100 200 之间第一个能被21整除的整数 exbreak m 三 程序调试 1错误分类一般来说 应用程序的错误有两类 一类是语法错误 例如函数名的拼写错 表达式书写错等 另一类是运行时的错误 指程序的运行结果有错误 这类错误也称为逻辑错误 2 查找逻辑错误的方法 删

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论