- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2013第六章matlab攻略
M文件和函数句柄
从总体上说,单独的MATLAB指令,及由若干指令构成的孤立表达式,只能解算或仿真简单理论数学模型所描述的问题。复杂些的问题通常需要用一组理论数学算式。这些问题的解算及仿真就需要借助较复杂的MATLAB程序进行。这种MATLAB程序由较多的MATLAB指令和多种多样的MATLAB表达式组成,并循着一定的执行次序运行。这种程序的扩展名为m。这就是脚本M文件或函数M文件。
本章系统介绍编写MATLAB程序时最常用到的四种控制结构、M函数文件的构造、主函数、子函数以及匿名函数。最后一节专门叙述函数句柄的创建、观察和调用。
MATLAB控制流
作为一种计算机编程语言,MATLAB提供了多种用于程序流控制的描述关键词(Keyword)。本节只介绍其中最常用的条件控制(if, switch)和循环控制(for, while, continue, break)。由于MATLAB的这些指令与其它语言相应指令的用法十分相似,因此本节只结合MATLAB给定的描述关键词,对这四种指令进行简要的说明。
if-else-end条件控制
if-else-end指令为程序流提供了一种分支控制,它最常见的使用方式见表6.1-1。
表 6.1-1 if-else-end 分支结构的使用方式
单 分 支 双 分 支 多 分 支 if expr
(commands)
end
if expr
(commands1)
else
(commands2)
end
if expr1
(commands)
elseif expr2
(commands)
…….
else
(commandsk)
end 当expr给出“逻辑1”时,(commands)指令组才被执行。 当expr给出“逻辑1”时,(commands1)指令组被执行;否则,(commands2)被执行。 expr1,expr2,… 中,首先给出“逻辑1”的那个分支的指令组被执行;否则,(commandsk)被执行。
该使用方法常被switch-case所取代。
【例6.1-1】已知函数,编写能对任意一组输入x值求相应y值的程序。
(1)
function y=exm060101(x)
% y=exm060101(x) Function calculate of example 6.1-1
n=length(x);
for k=1:n
if x(k)-1
y(k)=x(k);
elseif x(k)=1
y(k)=exp(1-x(k));
else
y(k)=x(k)^3;
end
end
(2)
(3)
x=[-2,-1.2,-0.4,0.8,1,6]
y=exm060101(x)
x =
-2.0000 -1.2000 -0.4000 0.8000 1.0000 6.0000
y =
-2.0000 -1.2000 -0.0640 0.5120 1.0000 0.0067
switch-case控制结构
表 6.1-2 switch-case控制结构的使用方式
指 令 格 式 含 义 switch expr
case value_1
(commands1)
case value_2
(commands2)
case value_k
(commandsk)
otherwise
(commands)
end expr为根据此前给定变量进行计算的表达式
value_1是给定的数值、字符串标量(或单元数组)
若expr结果与value_1(或其中的单元元素)相等,则执行。
value_k是给定的数值、字符串标量(或单元数组)
若expr结果与value_k(或其中的单元元素)相等,则执行。
该情况是以上的“并”的“补”
若所有case都不发生,则执行该组命令。
【例6.1-2】已知学生的名字和百分制分数。要求根据学生的百分制分数,分别采用“满分”、“优秀”、“良好”、“及格”和“不及格”等表示学生的学习成绩。
clear;
for k=1:10
a(k)={89+k};b(k)={79+k};c(k)={69+k};d(k)={59+k};
end;
c=[d,c];
%
A=cell(3,5);
A(1,:)={Jack,Marry,Peter,Rose,Tom};
A(2,:)={72,83,56,94,100};
%
for k=1:5
sw
您可能关注的文档
最近下载
- 中国文化概论课件-中国文化的现代化.ppt VIP
- 酒店基本情况调查表.docx VIP
- 《GNSS定位测量技术》 课件 子项目1、2 GNSS定位技术的发展;坐标系统与时间系统.ppt
- 人教人音版七年级音乐上册《红旗颂》课件下载.ppt VIP
- 2024年新人教版一年级上册数学全册教案(新版教材).docx
- 消防检测课件.pptx VIP
- 生物制药实验室管理软件:LabVantage二次开发_(5).LabVantage用户界面定制.docx VIP
- 中国文化概论课件-中国文化的发展历程.ppt VIP
- GB51016-2014 非煤露天矿边坡工程技术规范.pdf VIP
- 一种抗单粒子烧毁的高电子迁移率晶体管及其制备方法.pdf VIP
文档评论(0)