下载此文档

matlab课件-M函数文件.doc


文档分类:IT计算机 | 页数:约13页 举报非法文档有奖
1/13
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/13 下载此文档
文档列表 文档介绍
M文件和函数句柄
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指令为程序流提供了一种分支控制,-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/0)或逻辑数组(全1控制分支才执行)
当expr给出“逻辑1”时,(commands)指令组才被执行。
当expr给出“逻辑1”时,(commands1)指令组被执行;否则,(commands2) 被执行。
expr1,expr2,…中,首先给出“逻辑1”的那个分支的指令组被执行;否则,(commandsk)被执行。
该使用方法常被switch-case所取代。
【-1】已知函数,编写能对任意一组输入x值求相应y值的程序。
(1)
function y=exm060101(x)
% y=exm060101(x) Function calculate of example -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)用exm060101命名M程序并存放在当前目录下
(3)
x=[-2,-,-,,1,6]
y=exm060101(x)
x =
- - -
y =
- - -
switch-case控制结构
表 -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都不发生,则执行该组命令。
【-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
switch A{2,k}
case 100
r='满分';
case a
r='优秀';
case b
r='良好';

matlab课件-M函数文件 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数13
  • 收藏数0 收藏
  • 顶次数0
  • 上传人fy3986758
  • 文件大小0 KB
  • 时间2015-10-03
最近更新