- 1、本文档共46页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 M文件与编程基础;第五章 M文件与编程基础;· 5.1.3 函数句柄;· 5.1.4 map容器;· 5.1.4 map容器;· 5.2 逻辑判断及流程控制
· 5.2.1 关系运算
,=,,=,==,~=
关系运算符的结果只有两种可能,即0或1
关系运算符适用于矩阵,对矩阵的各个元素进行元素群运算
A=magic(6),p=(rem(A,3)==0)
· 5.2.2 逻辑字符检查
isnan: 元素为NaN时得1;isinf: 元素为Inf时得1
isfinite: 元素为有限值时得1;isempty: 矩阵为空阵时得1
isreal: 矩阵为实数阵时得1;issparse: 矩阵为稀疏阵时得1
isstr: 元素为文本字符串时得1;isglobal: 变量为全局变量时得1;· 5.2.2 逻辑字符检查;· 5.2.3 逻辑运算;·5.2.4 流程控制语句;· 5.2.4 流程控制语句;·5.2.4 流程控制语句;·5.3 程序编写基础;·5.3.2 M文件;· 5.3.3 脚本文件;·5.3.3 脚本文件;·5.3.4函数文件;·5.3.5函数参数;nargin, nargout
function [sum, prod] = cal(a, b)
% Function requires at least one input argument if nargin 1
error(Not enough input arguments.);
end
if (nargout = 1)
if (nargin == 1) sum=a+0;
end
if (nargin == 2) sum=a+b;
end
end
if (nargout == 2)
if (nargin == 1) prod=a*1;
end
if (nargin == 2) prod=a*b;
end
end end;· 5.3.5函数参数;·5.3.5函数参数;·5.4 人机交互命令;第六章 M文件编辑器和调试;6.2 M文件的调试方式
文件编辑器——图形用户界面方式
调试命令——命令窗口方式
6.2.1 调试的准备
打开文件
保存更改
将文件纳入当前目录或搜索路径
调试问题-Collatz问题
collatz.m
Collatzplot.m;6.2.2 设置断点;6.2.3 collatzplot中断点的设置;6.2.4 断点的颜色;6.2.6 M文件的逐步调试
Step:执行M文件的当前行
Step In:执行M文件的当前行,若该行是调用另外的函数,则进入该函数
Continue:继续执行该函数直到M文件结束或者 遇到另外的断点
Step Out:在执行Step In之后,运行完剩余的被调函数,跳出并停止;6.2.7 检查变量;6.2.8 更正问题和结束调试
改变变量值和检查结果
在调试状态,可以在命令行下改变变量的值
继续逐步调试,查看是否得到所期望的结果
结束调试
在确定了问题的情况下
在需要更改M文件的情况下
在需要运行其他函数的情况下
6.2.9 条件断点
条件断点的设置
点击要设置条件断点的行
从右键菜单中选择Set/Modify Conditional Breakpoint
在弹出的对话框中填入条件;6.2.10 匿名函数中的断点设置(pythog)
在包含匿名函数的行中可以有多个断点
当有多个断点的时候,断点颜色将始终显示蓝色
在匿名函数中设置断点的时候,每次被调用时,程序暂停;语法错误的检测方法;语法错误的检测方法(续);为什么用cell单元?;cell(单元)的使用;cell(单元)的使用(续);给cell加标题
在分隔符%%后键入一个空格,然后紧跟单元标题,MATLAB自动将其用粗体显示。 加单元标题可提高程序的可读性。
当鼠标位于某一单元的任一行时,该单元所有的代码会被高亮显示。背景色可通过菜单选项设置File Preferences Editor/Debugger Display,修改cell display options。;关于cell的高亮问题(sine_wave)
关于cell的嵌套定义的问题(fourier)
关于子函数cell定义的问题;38;39;40;M-Lint 代码检测和剖析报告;41;编辑/调试器中的M-Lint 自动代码分析器;44;45;46
文档评论(0)