北航matlab课件第四讲程序设计1
Matlab基础与应用校公共选修课
自动化科学与电气工程学院
M语言程序设计与GUI
讲述内容1 2 3 4 5 M语言简介 Matlab程序控制结构脚本文件和函数文件程序调试和编译 M文件编程注意问题
自动化科学与电气工程学院
M语言程序设计与GUI
Matlab文件类型
mat
mdl
m
常见的文件类型
mex
fig
p
自动化科学与电气工程学院
M语言程序设计与GUI
M语言简介M语言简介
Matlab语言称为第四代编程语言,程序简洁、可读性强且调试十分容易,是Matlab的重要组成部分。 M语言的开发内核是C语言,有许多语法和C语言类似,但又有其自身特点,由于M程序执行时逐行解释运行程序,因此Matlab是解释性编程语言。 M文件又可分为脚本文件和函数文件。 函数文件又分为内置的函数文件(如sin.m)、函数M文件(用户自己编写)、S函数文件。
自动化科学与电气工程学院
M语言程序设计与GUI
M文件的结构M文件结构示例function f= fact(n)% Compute a factorial value.% FACT(N) returns the factorial of N,% usually denoted by N!% Put simply, FACT(N) is PROD(1:N). f= prod(1:n); Function definition line H1 line Help text
函数定义行:位于函数的首行,以关键字function开头,函数名以及函数的输入输出变量都在这一行被定义。第一注释行:包含大写体的函数文件名和运用关键词简要描述的函数功能。在线帮助文本:通常包括函数输入输出参数的含义;调用格式说明。
Comment Function body
编写和修改记录:编写以及修改该 M文件的作者和日期;版本记录。用作软件档案管理。
函数体:由实现该M函数文件功能的Matlab指令组成。
自动化科学与电气工程学院
M语言程序设计与GUI
M文件的结构当前目录默认的当前目录: C:\Documents and Settings\user\My Documents\MATLAB C:\Program Files\MATLAB\R2007b\work创建工作目录: C:\mywork
自动化科学与电气工程学院
M语言程序设计与GUI
文件搜索路径文件搜索路径当用户从指令窗输入一个名为cow的指令后,Matlab的运作次序大致如下: 在内存中进行检查,看cow是不是变量;假如不是变量,则进行下一步。 检查cow是不是内置函数(built-in Function);假如不是,再进行下一步。 检查cow是不是其所在文件中的一个子函数,如果不是,进行下一步。 检查cow是不是其所在文件中的一个私有函数,如果不是,进行下一步。 在当前目录上,检查是否有名为cow的M文件存在;假如没有,则进行下一步。 在matlab搜索路径上的其它目录中,检查是否有名为cow的M文件存在。 如果到目前为止还没有找到这个cow,Matlab就会给出一条错误信息。
Matlab针对不同的文件类
型有不同的优先级。Mex文件优先级最高,P-code次之,M文件最低。通过path命令可在命令窗口中显示Matlab的搜索路径。
自动化科学与电气工程学院
M语言程序设计与GUI
文件搜索路径文件路径设置方法一:选择File菜单中的Set Path,打开对话框。
选择了左下方的“Save”后进行的修改是永久有效,不会随着Matlab的关闭而消失。
自动化科学与电气工程学院
M语言程序设计与GUI
文件搜索路径文件路径设置Path path('newpath') path(path,'newpath') path('newpath',path) p= path(...) path(path,‘c:/tools/goodstuff’) path(‘c:/tools/goodstuff’,path)
注意 使用path设置的路径只是在当前状态下有效,重起Matlab后消失。
自动化科学与电气工程学院
M语言程序设计与GUI
Matlab程序控制结构关系运算符逻辑运算符
条件语句 Conditional Control
讲述内容
循环语句 Loop Control
Try catch模块 Error Control
控制命令
自动化科学与电气工程学院
M语言程序设计与GUI
Matlab程序控制结构变量和关键字 Matlab中变量的命名规则 必须以字母开头,之后可以是任意的字母、数字或者下划线; 不能有空格; 大小写敏感; 变量名不能超过63个字符,第63个字符之后的部分都将被忽略; 尽量避免与Matlab中预定义的变量重名;(例如ans、eps、pi、inf、NaN) 避免与Matlab中的关键字重名; 关键字使用“iskeyword”命令来查看Matlab中的关键字。>> iskeyword ans= 'break' 'case‘………………… 'return' 'switch' 'try' 'while'
自动化科学与电气工程学院
M语言程序设计与GUI
Matlab程序控制结构Matlab的约定 在Matlab的常见分支或循环控制结构中,经常会遇到判断结构,根据某种条件的数值 0或1而得到不同的结论。在Matlab中,能够产生这种逻辑数值0或者1的表达式有关系和逻辑表达式。 在所有关系表达式和逻辑表达式中,作为输入的任何非0数都被看作“逻辑真”,只有0才被认为是“逻辑假”。 所有关系表达式和逻辑表达式的计算结果,即输出,是一个由0和1组成的逻辑数组 (Logical Array),在此数组中的1表示真,0表示假。
自动化科学与电气工程学院
M语言程序设计与GUI
Matlab程序控制结构关系运算符关系表达式是针对两个变量的表达式,可能是两个数值变量或者字符串变量,通过表达式的关系得出逻辑值0(false)或者1(true),取决于两个变量之间的关系。通用命令a op b
Add your title in here
自动化科学与电气工程学院
M语言程序设计与GUI
Matlab程序控制结构关系运算符使用示例A=[2 7 6;9 0 5;3 0.5 6]; B=[8 7 0;3 2 5;4 -1 7]; A= 2 7 6 9 0 Add your title in here 5 3 0.5 6 B= 8 7 0 3 2 5 4 -1 7 A== B ans= 0 1 0 0 0
0>> class(ans) ans= logical
0 1 0
自动化科学与电气工程学院
M语言程序设计与GUI
Matlab程序控制结构逻辑运算符 逻辑表达式是通过逻辑关系符将两个或多个变量进行连接得到的逻辑值。逻辑关系的引入,将使复杂关系运算成为可能,大致上分为三种逻辑操作:数组逻辑操作(Element-Wise Operators and Functions)二进制数位逻辑操作(Bit-Wise Functions)先决逻辑操作(Short-Circuit Operators)
自动化科学与电气工程学院
M语言程序设计与GUI
Matlab程序控制结构逻辑运算符数组逻辑操作(Element-Wise Operators and Functions)标量可以与任何维数数组进行逻辑运算,运算比较在数组每个元素间进行,因此运算结果与参与运算的数组同维;逻辑运算中如果没有标量,参与运算的数组必须维数相同,运算在两数组相同位置上的元素间进行,因此运算结果必定和参与运算的数组同维。 A=[0 1 1 0 1]; B=[1 1 0 0 1];
自动化科学与电气工程学院
…… 此处隐藏:1653字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [实用文档]李践-有效提升销售的12大黄金法则8-大
- [实用文档]党支部换届工作方案
- [实用文档]2013年下期电子商务专业部宣传工作计划
- [实用文档]方庄一矿通风、钻探绩效工资考核管理办
- [实用文档]项目一 认识企业物流认识企业物流
- [实用文档]MBI_Display_产品蓝图规画
- [实用文档]北京市建筑业劳务作业人员普法维权培训
- [实用文档]锅炉燃烧调整与运行优化
- [实用文档]4支付结算业务的核算
- [实用文档]米什金_货币金融学_第9版各章学习指导
- [实用文档]水泥混凝土路面硬化工程施工组织设计
- [实用文档]钢筋工程安全技术交底书
- [实用文档]关于公布华中师范大学本科毕业论文
- [实用文档]太原市园林绿化施工合同范本 2
- [实用文档]周日辅导 初中英语分类复习单项选择题(
- [实用文档]第四章 文化经纪人的管理形式 第二节
- [实用文档]学宪法讲宪法竞赛题库
- [实用文档]《数值计算方法》期末考试模拟试题二
- [实用文档]爱词霸学英语:每日一句( 十月)
- [实用文档]2014年国家公务员面试:无领导小组讨论
- 新课程主要理念和教学案例分析汇编(24
- 英国人的快乐源于幸福的家庭生活
- 七年级上册第一次月考模拟数学试卷
- 真丝及仿真丝的种类有哪些?
- 【最新】华师大版八年级数学下册第十六
- 高中英语3500个必背单词
- 我可以接受失败,但我不能接受放弃!
- 最近更新沪科版八年级物理上册期末试卷
- 绿化工作先进乡镇事迹材料
- 鲁教版九年级上册思想品德教学计划
- 英语音标的分类
- 地下室底板无梁楼盖与普通梁板结构形式
- 美容师黄金销售话术
- 雅思写作满分作文备考方法
- 血清甲状腺激素测定与高频彩色多普勒超
- 1度浅析装修对室内空气品质的影响
- 2017-2022年中国汞矿行业深度分析与投
- 计算机二级VB公共基础知识
- (何勇)秸秆禁烧_重在寻找出路
- 内外墙抹灰工程分包施工合同1




