m文件程序设计

合集下载

实验三_M_文件及_MATLAB_程序设计与调试

实验三_M_文件及_MATLAB_程序设计与调试

实验三M 文件及MATLAB 程序设计与调试一、实验目的全面掌握在MA TLAB 下进行程序设计的有关问题,具体涉及到M 脚本文件和M 函数文件的编写、全局和局部变量的使用、流程控制结构、提高程序执行效率的设计技术、程序调试等问题。

二、实验内容1、关于M 脚本文件和M 函数文件MATLAB 的M 文件有两类:脚本文件和函数文件。

(1)脚本文件——将原本要在MATLAB 的指令窗口中直接输入的语句,放在一个以.m 为后缀的,称为脚本文件中。

有了脚本文件,可直接在MATLAB 中输入脚本文件名(不含后缀)。

MATLAB 会打开这一脚本文件,并依次执行脚本文件中的每一条语句,这与在MATLAB 中直接输入语句的结果完全一致。

(2)函数文件——它的第一行必须是函数定义行。

M 函数文件由5 部分构成:◆函数定义行◆H1 行◆函数帮助文本◆函数体◆注释注意:在函数文件中,除了函数定义行之外,其它部分都是可以省略的。

但作为一个函数,为了提高函数的可用性,应加上H1 行和函数帮助文本,为了提高函数的可读性,应加上适当的注释。

例如:function y = mean(x)% MEAN Average or mean value.% For vectors, MEAN(X) is the mean value of the elements in X.% For matrices, MEAN(X) is a row vector containing the mean value of each column.[m,n]=size(x);if m==1% Determine whether x is a vectorm=n;endy = sum(x)/m;①函数定义行:function y = mean(x)function 为函数定义的关键字,mean 为函数名,y 为输出变量,x 为输入变量当函数具有多个输出变量时,则以方括号括起;当函数具有多个输入变量时,则直接用圆括号括起。

文件程序

文件程序

程序 : 程序2: 首先建立函数文件 函数文件f2c.m。(File-new-file.m,在新窗口中输 。 首先建立函数文件 在新窗口中输 入) function c=f2c(f) c=5*(f-32)/9 然后在 然后在MATLAB的命令窗口调用该函数文件。 的命令窗口调用该函数文件。 的命令窗口调用该函数文件 clear; y=input('Input Fahrenheit temperature:'); temperature: x=f2c(y) 输出情况为: 输出情况为: Input Fahrenheit temperature:70 : c= 21.1111 x= 21.1111
2.switch语句 . 语句 switch语句根据表达式的取值不同,分别执行不 语句根据表达式的取值不同, 语句根据表达式的取值不同 同的语句,其语句格式为: 同的语句,其语句格式为: switch 表达式 当表达式的值等于表达式1的 当表达式的值等于表达式 的 case 表达式1 表达式 值时, 执行语句组1, 值时 , 执行语句组 , 当表达式的 语句组1 语句组 值等于表达式2的值时 的值时, 值等于表达式 的值时 , 执行语句 case 表达式 表达式2 组 2, …, 当表达式的值等于表达 , , 的值时, 式 m的值时, 执行语句组 , 当表 的值时 执行语句组m, 语句组2 语句组 达式的值不等于case所列的表达式 达式的值不等于 所列的表达式 …… 的值时, 执行语句组n。 的值时 , 执行语句组 。 当任意一 case 表达式m 表达式 个分支的语句执行完后, 个分支的语句执行完后,直接执行 语句组m 语句组 switch语句的下一句。 语句的下一句。 语句的下一句 otherwise 语句组n 语句组 end

MATLAB-程序设计-M文件建立

MATLAB-程序设计-M文件建立

1、先建立函数M文件fun2.m来定义函数f(x) function f=fun2(x) 1 else if x<=0
f=x^3 else
f=2*x end end
2、再在MATLAB命令窗口输入fun2(2),fun2(0.5), fun2(-1)即可.
MATLAB入门
程序设计
M文件
MATLAB的内部函数是有限的,有时为了研究 某一个函数的各种性态,需要为MATLAB定义新函 数,为此必须编写函数文件. 函数文件是文件名后 缀为M的文件,这类文件的第一行必须是一特殊字 符function开始,格式为:
function 因变量名=函数名(自变量名) 函数值的获得必须通过具体的运算实现,并赋 给因变量.
2x x 1
1、编写函数M文件 function f=fun1(x) if x>1
f=x^2+1 end if x<=1
f=2*x end
2、在MATLAB命令窗口输入fun1(2),fun1(-1)即可.
2) 有两个选择的一般形式是: if (expression1) {commands1} else {commands2} end
例: 设银行年利率为11.25%.将10000元钱存入银行, 问多长时间会连本带利翻一番?
money=10000; years=0; while money<20000
years=years+1; money=money*(1+11.25/100); end years money
运行结果:
years =7 money = 2.1091e+004
3. if-else-end结构
(1)有一个选择的一般形式是: if (expression) {commands} end

m文件程序设计

m文件程序设计

m⽂件程序设计⼀、实验⽬的1. 通过练习理解matlab编程⽅法;2. 掌握分⽀结构程序设计思路;3. 掌握循环结构程序设计思路。

⼆、实验环境1. 计算机2. matlab7.x三、实验说明1. 熟悉matlab7.x运⾏环境,正确操作,认真观察;2. 实验学时:2学时;3. 学会使⽤help;4. 编写程序前先写出程序的流程图框架;5. ⾃主编写调试程序直到正确为⽌,必要时参考相关资料,;6. 保存整理实验结果,提交实验报告。

四、实验内容1. 输⼊⼀个百分制成绩,要求输出成绩等级为:A、B、C、D、E,其中90-100为A;80-89为B;70-79为C;60-69为D;60以下为E1)⽤if或switch语句实现;2)输⼊百分制成绩后要判断成绩的合理性,对不合理的成绩要输出出错信息提⽰,⽐如:输⼊成绩不能⼤于100。

3)程序保存名为sy3加上本⼈学号2.某公司员⼯的⼯资计算⽅法如下:(1)⼯作时数超过120⼩时者,超过部分加发15%;(2)⼯作时数低于60⼩时者,扣发700元;(3)其余按每⼩时84元计发。

编程按输⼊的⼯号和该员⼯的⼯时数,计算应发⼯资。

3. 根据求的近似值。

当n分别取100、1000、10000时,结果是多少?要求:分别⽤循环结构和向量运算(使⽤sum函数)来实现。

五、实验程序及结果1、程序:m=input('请输⼊⼀个数值:');n=floor(m/10);switch ncase 9disp('A');case 8disp('B');case 7disp('C');case 6disp('D');case {1,2,3,4,5}disp('E');otherwisedisp('输⼊错误!');end2、程序:x=input('请输⼊⼯号:');y=input('请输⼊⼯作时:');if y>120a=84*120+(y-120)*84*0.15;disp(['本⽉⼯资为:',num2str(a)]); elseif y<60b=84*y-700;disp(['本⽉⼯资为:',num2str(b)]); elsec=84*y;disp(['本⽉⼯资为:',num2str(c)]); end3、程序:y=0;n=input('输⼊⼀个数:');for i=1:ny=y+1/i/i;enda=sqrt(6*y);disp(['圆周率近似值为:',num2str(a)]);。

MATLAB程序设计M文件程序控制结构程序调试程序举例

MATLAB程序设计M文件程序控制结构程序调试程序举例
x=input('Please input x=:');
y=input('Please input y=:');
[rho,the]=tran(x,y);
rho
the MATLAB中,函数能够嵌套调用,即一种函数能够调用别旳函数, 甚至调用它本身。一种函数调用它本身称为函数旳递归调用。
例6 分别建立命令文件和函数文件,将华氏温度f转换为 摄氏温度c。
21.1111
x=
21.1111
(5). 函数文件旳其他有关概念
①局部变量和全局变量:
局部变量只存在于单个函数工作空间,全局变量 经过global定义,可穿行于不同函数工作空间, 涉及基本工作空间workspace。
函数文件旳内部变量是局部旳,与其他函数 及MATLAB内存相互隔离; 而假如在若干函数中把某一变量定义为全局 变量,那么这些函数将公用这个变量,全局 变量旳作用域是整个MATLAB旳工作区,即 全程有效,全部函数都能够对其存取和修改。
if (nargin == 1) tol = max(size(x)) * max(s) * eps;
程序部分
end
r = sum(s > tol);
(2)命令m文件建立及其运营
建立 涉及下列环节: 进入m文件编辑器 输入程序 定义文件名,保存程序
命令M文件旳运营方式: 直接在命令窗口输入该文件旳文件名 在m文件编辑器中打开该文件后点击工具条中
② M文件模式
将matlab语句构成旳程序存储成以m为扩展名 旳文件,然后再执行该程序文件,这种工作模式 称为程序文件模式。
程序文件不能在命令窗口下建立,因为命令窗口 只允许一次执行一行上旳一种或几种语句。

基础篇-第5章-M文件

基础篇-第5章-M文件
第五章 M文件编程
简单地说,M文件就是用户把要实现的命令写在一个以 .m作为文件扩展名 的文件中,然后由MATLAB系统进行解释,运行出结果,实际上M文件是一个 命令集,因此,MATLAB具有强大的可开发性与可扩展性。MATLAB中的许多 函数本身都是由M文件扩展而成的,而用户也可以利用M文件来生成和扩充 自己的函数库。
函数定义行(只存在于函数文 件)
H1行 Help文本 M文件内容
注释
函数体
具体语句的功能注释、说明
进行实际计算的代码

1. 函数定义行 函数定义行被用来定义函数名称,定义输人输出变量的数量、顺序。注意脚本式M文 件没有此行。完整的函数定义语句为: function [outl,out2,out3...]=funName(in1,in2, in3...) 其中输入变量用圆括号,变量间用英文逗号‚,‛分隔。输出变量用方括号,无输出可 用空括号[],或无括号和等号。无输出的函数定义行可以为: function funName(inl,in2,in3...) 在函数定义行中,函数的名字所能够允许的最大长度为63字符,个别操作系统有所不 同,用户可自行使用namelengthmax函数查询系统允许的最长文件名。另外函数文件 保存时,MATLAB会默认以函数的名字来保存,请不要更改此名称,否则调用所定义 的函数时会发生错误,不过脚本文件并不受此约束。funName的命名规则与变量命名 规则相同,不能是MATLAB系统自带的关键词,不能使用数字开头,也不能包含非法 字符。 2. H1行 H1行紧跟着函数定义行。因为它是Help文本的第一行,所以叫它H1行。用百分号(%) 开始。MATLAB可以通过命令把M文件上的帮助信息显示在命令窗口。因此,建议写M 文件时建立帮助文本,把函数的功能、调用函数的参数等描述出来,以供自己和别人 查看,方便函数的使用。 H1行是函数功能的概括性描述,在命令窗口提示输人命令可以显示H1行文本:

第二讲MATLAB的程序设计和M文件

第二讲MATLAB的程序设计和M文件

第二讲MATLAB的程序设计和M文件在MATLAB中,程序设计主要是通过编写和运行M文件来实现。

M文件是MATLAB的主要代码文件,用于实现不同功能的程序,可以包含变量定义、算法实现、函数调用和图形绘制等。

下面将介绍MATLAB的程序设计和M文件的基本知识。

MATLAB的程序设计主要包括如下几个方面:1.变量和数据类型:在M文件中,可以使用不同的变量类型存储数据,如整型、浮点型、字符型等。

不同的变量类型在MATLAB中有不同的表示方法和功能。

2.运算和表达式:在M文件中,可以使用常见的数学运算符(如加减乘除、指数等)进行计算。

同时,也可以使用逻辑运算符(如与、或、非等)进行逻辑运算。

3. 条件语句:在M文件中,可以使用条件语句实现根据不同的条件执行不同的操作。

MATLAB中的条件语句主要有if语句和switch语句,通过判断条件的真假来决定执行路径。

4. 循环语句:在M文件中,可以使用循环语句实现对一段代码的重复执行。

MATLAB中的循环语句主要有for循环、while循环和do-while循环。

5.函数的定义和调用:在M文件中,可以通过定义函数来实现特定功能的封装。

函数可以包含输入参数和输出参数,通过参数的传递来实现数据的交互和函数的调用。

1.M文件的命名和保存:M文件的命名应该具有描述性,以体现文件中代码的功能。

M文件的保存格式是以.m为文件扩展名。

2.M文件的结构:在M文件中,一般会包含变量定义、函数定义和主程序等部分。

变量定义部分用于声明和初始化变量,函数定义部分用于定义自定义函数,而主程序部分用于调用函数和执行主要功能。

3.代码注释:为了提高代码的可读性和可维护性,需要在M文件中添加注释。

注释可以用于解释代码的目的和思路,以及描述变量、函数和算法等的作用和实现方法。

4.代码风格:为了代码的一致性和可读性,需要遵循一定的代码风格规范。

例如,可以在操作符周围留有空格,使用一致的缩进和命名规则,避免使用不必要的缩写等。

第三章 matlab程序设计基础

第三章 matlab程序设计基础
y
3. 程序控制流 3.多分支if语句
• 多分支if语句格式为:
if 条件1 语句组1 elseif 条件2 语句组2 …… elseif 条件m 语句组m else 语句组m+1
end
3. 程序控制流
• 例 输入一个字符,若为大写字母,则输出其后继字符,若为 小写字母,则输出其前导字符,若为数字字符则输出其对应 的数值,若为其他字符则原样输出。 – 程序如下:
c=input('请输入一个字符','s'); if c>='A' & c<='Z' disp(setstr(abs(c)+1)); elseif c>='a'& c<='z' disp(setstr(abs(c)-1)); elseif c>='0'& c<='9' disp(abs(c)-abs('0')); else disp(c); end
分类:脚本文件(Script File)和函数文件(Function File)。 主要区别。
1. M文件 脚本文件
没有输入和输出 由一系列指令组成 可在命令窗口直接运行 产生的所有变量存储在workspace中。 例 test.m。
1. M文件 例 脚本M文件实例
脚本M文件实例,查找10 ~100所有素数。
1. M文件
• 函数文件examp.m: function fout=charray(a,b,c) %举例说明函数文件名与函数名不同 if nargin==1 fout=a; elseif nargin==2 fout=a+b; elseif nargin==3 fout=(a*b*c)/2; end • 命令窗口: x=[1:3];y=[1;2;3]; examp(x) examp(x,y') examp(x,y,3)

实验五 M文件及程序设计

实验五 M文件及程序设计

一、实验目的1.练习函数的定义和书写及调用2.练习M文件下书写代码二、实验设备装有MATLAB的计算机。

三、实验内容1,分别编写命令(M)文件和函数(function)文件,在命令文件中可循环输入学生成绩,在函数文件判断成绩所属等级。

统计各分段的人数,并将各人的成绩按优、良、中、及格和不及格表示。

2.猜数游戏。

首先由计算机产生一个[1,100]之间的随机整数,然后由用户猜测所产生的随机数。

根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”并请用户继续猜测,小于则显示“Low”并请用户继续猜测,等于则显示“You won”同时退出游戏。

用户最多可以猜7次。

如果第七次还未猜对,则显示“You fail!"并退出游戏。

四、实验步骤和结果1. 代码结果:输入正数开始5请输入学生成绩x=89请输入学生姓名l请输入学生成绩x=78请输入学生姓名h请输入学生成绩x=45请输入学生姓名k请输入学生成绩x=-1ans =优秀的人数0ans =良好的人数1ans =中等的人数1ans =及格的人数0ans =不及格的人数1姓名成绩等级l 89 良好h 78 中等k 45 不及格2.代码五、总结1.实验练习了函数的创建和使用,并且在M的文件中调用函数。

2.复习了单元数组和结构数组的知识。

3. 使用了字符串比较函数,在M文件中对各个等级的人数进行了统计。

4.猜数游戏中开始的代码,当第七次猜对后会输出”You Fail”,后对代码进行了改进。

第7章 MATLAB程序设计和m文件

第7章  MATLAB程序设计和m文件

•While 循环的次数是不确定的。 循环的次数是不确定的。
第7章 MATLAB程序设计和m文件
7.2 MATLAB控制流 7.2.3 for循环和while循环 例:创建Hilbert矩阵 (1)直接循环计算 clear tic 。 K=1000; for m = 1:K for n = 1:K A1(m,n) = 1/(m+n -1); end end t1=toc 预先配置矩阵空间可显著提高运行效率!
第7章 MATLAB程序设计和m文件
7.2 MATLAB控制流 7.2.3 for循环和while循环 例:while循环,求解n!达到100位数的第一个n是多少。 n=1; while prod(1:n)<1e100 。 n=n+1; end n
第7章 MATLAB程序设计和m文件
7.2 MATLAB控制流
,编写能对任意一组输
入x值求相应y值的程序
• • • • • • • • • • • x=[-2,-1.2,-0.4,0.8,1,6] 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 %输入,可变 输入, 输入
7.2.4 控制程序流常用指令 指令及使用格式 v=input('message') v=input('message','s') keyboard break 使 用 说 明 该指令执行时,“控制权”交给键盘;待输入结 束,按下Enter键,“控制权”交还MATLAB。 message是提示用的字符串。 遇到keyboard时,将“控制权”交给键盘,用户 可以从键盘输入各种MATLAB指令。 break指令,或导致包含该指令的while、for 循环 终止,或在if - end, switch - case, try – catch中导 致中断。 跳过位于它之后的循环体中其他指令,而执行循 环的下一个迭代。 第一种格式使程序暂停执行,等待用户按任意键 继续; 第二种格式使程序暂停n秒后,再继续执行。

matlab教程m文件介绍

matlab教程m文件介绍
• 用户如想灵活应用matlab去解决实际问题, 充分调用matlab的科学技术资源,就需要编 辑m文件 • 包含matlab语言代码的文件称为m文件,其 扩展名为m。 • 编辑m文件可使用各种文本编辑器。
一、matlab的工作模式
指令驱动模式
通常matlab以指令驱动模式工作,即在 matlab 窗口下当用户输入单行指令时,matlab 立即处理这条指令,并显示结果,这就是 matlab命令行方式。 命令行操作时,matlab窗口只允许一次执行 一行上的一个或几个语句。
命令行方式程序可读性差,而且不能存储, 对于复杂的问题,应编写成能存储的程序文 件。
m文件模式
将matlab语句构成的程序存储成以m为扩展名 的文件,然后再执行该程序文件,这种工作 模式称为程序文件模式。 程序文件不能在指令窗口下建立,因为指令 窗口只允许一次执行一行上的一个或几个语 句。
二、m文件的创建
?echo指令用来控制m文件在执行过程中是否显示echoon打开所有命令文件的显示方式echooff关闭所有命令文件的显示方式echo在以上两者间切换?input提示用户从键盘输入数值字符串表达式
matlab的程序设计
—— matlab语言编程, 程序简洁、可读性很强 而且调试十分容易。
m文件简介
(3). 分支结构——根据一定条件来执行的各条语 句。 if — else — end语句有3种形式 1 if 表达式 执行语句 end 2 if 表达式 ——— 是 语句1 else ———— 否 语句2 end
3 if
表达式1 ——— 多分支 语句1 elseif 表达式2 语句2 elseif 表达式3 语句3 · · · else 语句n end
(3). 函数m文件— 需要输入变量,返回输出变量

M文件的编写

M文件的编写
for m=1:500 s=0; for k=1:m/2 if rem(m,k)==0 s=s+k; end end if m==s
disp(m); end end
s=s+k; end disp(‘s’);
2.while语句 循环次数不确定 while语句的一般格式为: while (条件) 循环体语句
end 其执行过程为:若条件成立,则执行 循环体语句,执行后再判断条件是否 成立,如果不成立则跳出循环。
例10 从键盘输入若干个数,当输入0时结束输入,求这些数 的平均值和它们之和。
n=100;
y1=1:2:2*n-1;
y=sum(1./y1);
y
for语句更一般的格式为: for 循环变量=矩阵表达式 循环体语句
end 执行过程是依次将矩阵的各列元 素赋给循环变量,然后执行循环体 语句,直至各列元素处理完毕。
例9 写出下列程序的执行结果。 s=0; a=[1,3,4;15,16,17;18,19,20;21,22,23]; for k=a
例 1+2*3>mp;15+2*3>8+9 返回 1
1+2*(3>8)+9
返回 10
MATLAB运算符
1.关系运算符 关系运算符对于程序的流程控制非常有用. MATLAB共有六个关系运算符,它们分别是
< 小于;< = 小于等于;> 大于;>= 大于等 于;﹦﹦ 等于;~ =不等于 关系运算符可以比较同型矩阵,此时将生成一个 0-1矩阵,当相应元素经关系运算为真时,对应 位置上生成1,否则为0。关系运算符也可以比较 标量和矩阵,此时是标量与矩阵的每个元素分别 比较,生成一个0-1矩阵.

matlab M文件的建立与调试

matlab  M文件的建立与调试

三、m文件的分类
可以存取的M文件— 称命令文件(程序文件、脚本文件)
可调用M文件 — 称函数(function)文件
1、程序文件 以.m格式进行存取,包含一连串的MATLAB指令和 必要的注解。与在命令窗口逐行执行文件中的所有指 令,其结果是一样的。没有输入输出参数。 程序运行时只需在命令窗口中键入其名称即可
第二章
2.1 变量与赋值 2.2矩阵的初等运算 2.3元素群运算
基本语法
2.4逻辑判断及流程控制 2.5基本绘图方法 2.6M文件及程序调试
2.6 M文件及程序调试
一、M文件简介
• 用户如想灵活应用matlab去解决实际问题,充分 调用matlab的科学技术资源,就需要编辑m文件 • 包含matlab语言代码的文件称为m文件,其扩展名 为m。
• keyboard —
当keyboard在m文件中出现时,它停止 文件的执行并控制键盘,用于修改程序。
a=input('a=');
pause(2) b=input('b=');
A='press any key to continue..'; disp(A) pause c=input('c='); keyboard d=b*b-4*a*c; disp(A) pause x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)]
主要特征: (1)、用clear,close all等语句开始,清除工作空间原有的 变量与图形,以避免其它已执行的程序残留数据对本程序 的影响。 (2)、前几行通常是对此程序的说明。这些注释行必须以 % 开始,以便计算机执行时不予理会。(注释部分) (3)、程序的主体 如果程序中有全局变量,即在主程序与主程序中共有 的变量,应在程序中的起始部分注明。语句为: global 变量名 (4)、整个程序按Matlab 标示符的要求其文件名,并加 上.m后缀。

M文件PPT课件

M文件PPT课件
23
MATLAB
2. 选择结构(根据给定条件成立否,分别执行不同语
句,主要有if,switch,try)
(1) 条件分支语句——if语句
在MATLAB中,if语句有3种格式。
1) 单分支if语句:
if 条件
语句组
end
2)双分支if语句;(求分段函数多用)
if 条件
语句组1
else
语句组2
end
24
☺用matlab自带的编辑器来创建m文件。 (建 议使用)。
☺单击桌面图标 ,或选中{File:New: M-File} ,或在命令窗输入指令edit,都可以打开
7
空白的M文件编辑器;点击 ,打开已有的M文
MATLAB
(2) M文件的分类
M文件有两类:命令文件(脚本文件)和函数 文件。它们的扩展名均为.m。
30
MATLAB
(3)循环的嵌套
如果一个循环结构的循环体又包括 一个循环结构,就称为循环的嵌套,或 称为多重循环结构。exfor.m
31
MATLAB
(4)break语句和continue语句 ☺它们一般与if语句配合使用。 ☺break语句用于终止循环的执行。 当在循环体
第四章 MATLAB程序设计
4.1 M文件 4.2 程序控制结构 4.3 程序调试
2
MATLAB
本章重点
1.掌握M文件的特点及功能 2.编写M函数文件的基本方法及步骤 3.掌握常用的几种程序控制结构
3
MATLAB
4.1 M文件
☺MATLAB的工作模式 ☺M文件介绍 ☺M函数文件相关概念
4
MATLAB
1. MATLAB的工作模式
指令(命令)执行模式

M文件程序设计

M文件程序设计

MATLAB 语言上机题
—— M 文件及程序设计
1)编命令文件求下列联立方程的解(利用矩阵运算求解)
2)分别编写命令(M )文件和函数(function )文件,在命令文件中可循环输入学生成绩,在函数文件实现输出,判断成绩所属等级。

整个实验无限循环。

统计各分段的人数,并将各人的成绩按优、良、中、及格和不及格表示。

3)猜数游戏。

首先由计算机产生[1,100]之间的随机整数,然后由用户猜测所产生的随机数。

根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”,小于则显示“Low”,等于则显示“You won”,同时退出游戏。

用户最多可以猜7次。

如果第七次还未猜对,则显示“You fail!"并退出游戏。

14
67611583197347294=+-=+-+=+-=+-+w y x w z y x w z y w z y x。

实验2 M文件的编写、函数

实验2 M文件的编写、函数

【例5】显示switch-case的程序。生成一个 在[0, 6]上的均匀分布的随机数,以此作 为掷骰子出现的点数,出现1,3,5显示奇数, 出现2,4,6显示偶数,出现0则显示错误.
函数名:example2_5.m disp('Play dice,please!') %提示输入信息 Num=round(6*rand) %利用round函数产生在[0,6]上 服从均匀分布的随机数 switch Num case {1,3,5}, disp('Odd') case {2,4,6}, disp('Even') otherwise, disp('You are out!') end
2第一行帮助行以开头作为lookfor指令搜索的行m文件及函数的编写3函数体说明及有关注解以开头用以说明函数的作用及有关内容4函数体语句函数体内使用的除返回和输入变量这些在function语句中直接引用的变量以外的所有变量都是局部变量即在该函数返回之后这些变量会自动在matlab的工作空间中清除掉
实验2 M文件及函数的编写
•无需修改程序
M文件及函数的编写
【例9 】函数的递归调用:阶乘
1.写好程序,存成my_fact.m文件 function k=my_fact(n) if n>1 k=n*my_fact(n-1); elseif n==0|n==1 k=1; else error(' U input a wrong parameter!') end 2.在command window中调用:num=my_fact(11) MATLAB函数为: prod(1:1000)
M文件及函数的编写
(4) 分支语句switch-case-otherwise Switch expression case case_1 (commands 1) case case_2 (commands 2) …… case case_k (commands k) otherwise, (commands) end 注意 在执行过程中,只 执行一个case后面的命令 并跳出开关, 程序在end后继续执行。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验3. m文件程序设计
一、实验目的
1.通过练习理解matlab编程方法;
2.掌握分支结构程序设计思路;
3.掌握循环结构程序设计思路。

二、实验环境
1.计算机
2.matlab软件
三、实验说明
1.熟悉matlab运行环境,正确操作,认真观察;
2.实验学时:2学时;
3.学会使用help;
4.编写程序前先写出程序的流程图框架;
5.自主编写调试程序直到正确为止,必要时参考相关资料,;
6.保存整理实验结果,提交实验报告。

四、实验内容
1. 输入一个百分制成绩,要求输出成绩等级为:A、B、C、D、E,其中90-100
为A;80-89为B;70-79为C;60-69为D;60以下为E
1)用if或switch语句实现;
程序设计如下
c=input('请输入成绩:');
if c>=90
disp('A');
elseif c>=80
disp('B');
elseif c>=70
disp('C');
elseif c>=60
disp('D');
else disp('E');
end
2)输入百分制成绩后要判断成绩的合理性,对不合理的成绩要输出出错信
息提示,比如:输入成绩不能大于100。

程序设计如下:
c=input('请输入成绩:');
if c>100|c<0
disp('成绩不合理');
elseif c>=90
disp('A');
elseif c>=80
disp('B');
elseif c>=70
disp('C');
elseif c>=60
disp('D');
else disp('E');
end
3)程序保存名为sy3加上本人学
2. 某公司员工的工资计算方法如下:
(1)工作时数超过130小时者,超过部分加发15%;
(2)工作时数低于50小时者,扣发700元;
(3)其余按每小时84元计发。

编程按输入的工号和该员工的工时数,计算应发工资。

程序设计如下:
a=input('输入员工工号:')
b=input('输入员工工时数:')
if b>130
c=(b-130)*84*1.15+130*84;
elseif b>=50
c=84*b;
else c=b*84-700;
end
c
3. 根据, 1312111622222
n
++++= π求π的近似值。

当n 分别取100、1000、 10000 时,结果是多少?
要求:分别用循环结构和向量运算(使用sum 函数)来实现。

备注: 实验需要的函数input ,disp
程序设计如下
n=input('ÇëÊäÈën£º');
y=0;
for i=1:n
y=y+1/i/i;
pi=sqrt(6*y);
end
pi
运行结果
n=100时,pi=3.1321
n=1000时,pi=3.1406
n=10000时,pi=3.1415。

相关文档
最新文档