第六章 M文件和函数句柄.ppt

第六章 M文件和函数句柄.ppt

ID:58807355

大小:762.50 KB

页数:46页

时间:2020-10-02

第六章 M文件和函数句柄.ppt_第1页
第六章 M文件和函数句柄.ppt_第2页
第六章 M文件和函数句柄.ppt_第3页
第六章 M文件和函数句柄.ppt_第4页
第六章 M文件和函数句柄.ppt_第5页
资源描述:

《第六章 M文件和函数句柄.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第六章M文件和函数句柄——matlab语言称为第四代编程语言,程序简洁、可读性很强而且调试十分容易。进行程序设计的m文件是matlab重要组成部分。本章内容§1matlab控制流§2脚本文件和函数文件§3函数类别§4函数句柄6.1MATLAB控制流(1)顺序结构——依次顺序执行程序的各条语句(2)分支结构——根据一定条件来执行各条语句。if—else—end条件控制语句有3种形式单分支、双分支、多分支switch—case—otherwise—end结构仅执行满足条件的分支(3)循环结构——被重复执行的

2、一组语句。循环语句主要有:for—endwhile—end分支控制有3种形式多分支if表达式1语句1elseif表达式2语句2elseif表达式3语句3···else语句nend6.1MATLAB控制流6.1.1if—else—end条件控制单分支if表达式执行语句end双分支if表达式语句1else语句2end在条件表达式中,通常用关系操作符:>,<,<=,>=,==,~=逻辑操作符:&,

3、,~逻辑函数:isequal——若是相等则为真isempty——若是空矩阵则为真isstr——若是字符串则

4、为真functiony=abc(x)%functioncalculateofyn=length(x);fork=1:nifx(k)<-1y(k)=x(k);elseifx(k)>=1y(k)=exp(1-x(k));elsey(k)=x(k)^3;endend例6.1-1:编写m函数,对于任意一组输入x值,计算函数值x(x<-1)y=x3(-1≤x<1)e-x+1(x≥1)x=[-2,-1.2,-0.4,0.8,1,6]y=abc(x)x=-2.0000-1.2000-0.40000.80001.00006

5、.0000y=-2.0000-1.2000-0.06400.51201.00000.0067switch-case语法结构:switchexprcasevalue1(commands1)casevalue2……casevlauek(commandsk)otherwise(commands)end6.1.2switch-case控制结构●当遇到switch结构时,matlab将表达式的值依次和各个case指令后面的检测值进行比较.如果比较结果为假,则取下一个检测值再比较,一旦比较结果为真,matlab将执行相

6、应的一组命令,然后跳出该结构。如果所有的比较结果都为假,即表达式和所有的检测值都不等,matlab将执行otherwise后面的一组命令.可见该结构保证至少有一组命令会得到执行。●switch指令后面的表达式为一个标量或者一个字符串。对于标量形式的表达式,比较这样进行:表达式==检测值i.对于字符串,将调用函数strcmp来实现比较。●case指令后面的检测值不仅可以是一个标量值或字符串,还可以是一个单元数组。如果一个检测值是一个单元数组,matlab将把表达式的值和该单元数组中的所有元素进行比较,如果单元

7、数组中某个元素和表达式的值相等,就认为此次比较结果为真。●当matlab检测到某个检测值和表达式相等时,将执行相应的一组命令,执行完毕,自动跳出swith结构,无需使用break指令。例6.1-2:根据学生百分制分数进行等级成绩划分.fori=1:10a{i}=89+i;b{i}=79+i;c{i}=69+i;d{i}=59+i;end%用胞元数组c=[d,c];A=cell(2,5);A(1,:)={'Jack','Marry','Peter','Rose','Tom'};A(2,:)={72,83,56

8、,94,100};%用胞元数组fork=1:5switchA{2,k}case100,A{3,k}='满分';casea,A{3,k}='优秀';caseb,A{3,k}='良好';casec,A{3,k}='及格';otherwise,A{3,k}='不及格';endendA'Jack''Marry''Peter''Rose''Tom'[72][83][56][94][100]'及格‘'良好''不及格''优秀‘'满分'例6.1-3:用for循环生成Hilbert方阵()循环法:K=5;A=zeros(K,

9、K);%预配置内存空间form=1:Kforn=1:KA(m,n)=1/(m+n-1);endendformatratA6.1.3for循环和while循环向量法:N=5;n=repmat(1:N,N,1);m=n';formatratA3=1./(n+m-1)for循环结构语法为:fori=表达式(表达式为一个向量)可执行语句endwhile—end循环结构语法为:while表达式循环体语句end表达式一般是由

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。