版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验五 m文件和matlab程序设计、实验目的matlab作为一种高级计算机语言,不仅可以命令行方式完成操作,也具有数据结构、控 制流、输入输出等能力,本次实验通过熟悉和掌握m文件的建立与使用方法,以及函数与 控制程序流程语句的使用,使学生具备一定的编程和程序调试能力。1. 掌握文件的使用方法。2. 掌握if语句和switch语句的使用3. 掌握循坏语句的使用4. 通过练习理解matlab编程方法。二、实验原理1. m文件用matlab语言编写的程序,称为m文件。m文件根据调用方式的不同分为两类,命令 文件(script file)和函数文件(function file)o 区别?2. 程序控
2、制结构1) 顺序结构2) 选择结构(1) if语句 a)单分支if语句b)双分支让语句 c)多分支if语句(2) switch 语句(3) try语句3) 循环结构(1) for语句(2) while 语句(3) break 语句、continue 语句、rclum 使用,区别?3. 函数文件function输出形参表=函数名(输入形参表)注释说明部分函数体语句注意事项?三. 实验要求1. 首先上机练习ppt中各种流程控制语句的有关实例。2. 然后上机练习下面的实验习题。四、实验习题1.数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇 数,则与3相乘再加上1。重复此过程,最终
3、得到的结果为1。如:2t10t5t1 6t8t4t2t16t3t1 0t5t1 6t8t4t2t1运行下面的程序,按程序提示输入n=1,2,3,5,7, 8,9等数来验证这一结论。%classic m3n+r* problem from number theory. while 1n=input(*enter n,negative quits:1);if n<=0breakenda=n;while n>1if rem(n,2)=0n=n/2;elsen=3*n+1;enda=a,n;endaendenter n,negative quits:编程求满足y10000 0的最小m值。2
4、.olil ffwh1x- di d - e m17 o ; o) 0.1 0( 021 mo ; adi (+ +a-1 - ai3编写一个函数,计算下面函数的值,给出x的值,调用该函数后,返冋 y的值。function y=myfun1(x)sin x, y(x) = < x,x + 6,选择一些数据测试你编写的函数。function y=myfunl(x)if x<=0y=sin(x);elseif x>0&x<=3y=x;elseif x>3y=-x+6;end运行结果:4.用如下迭代公式求,迭代的终止条件为xn+l-xn 10"5 ,迭
5、代初值x。= 10,迭代次数不超过100次。分别对迭代结果和准确值进行比较,并统计迭代次数。£_i | a迭代公式:兀“+1=二+function x, n=sqrt_a(a) x=1.0;for k=l:100m=x;x=x/2+a/(2*x);if abs(x-m)<=10a(-5) break end endx;n=k;s=(x-sqrt(a); ifabs(s)<=10a(-5)dispc 正确 j;6186 dispc错误j; end下面调用举例:运行结果:» x ,n=sqrt_a(3) 正确x =1.7321n =5» x, n=sqrt
6、_a(17) 正确4.1231n =6» xn=sqrt_a(113)正确x =10.6301n =85.定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在命令文件 中调用该函数文件。程序设计:function e in s c=num(x)e=exp(x)ln=log(x)s=sin(x)c=cos(x)end运行结果:» num(5i)e =0.2837 - 0.9589iln =1.6094 + 1.5708is =0 +74.2032ic =74.2099ans =0.2837 - 0.9589i6设f(x)二1 , i ,编写一个matlab函数文件fx.
7、m,(x2) +o.i (x3) +o.oi使得调用f(x)时,x可用矩阵代入,得岀的f(x)为同阶矩阵。程序设计:函数文件fx.m:function a=fx(x)a=l./(x-2)"2 + 0.1)+1./ ( ( (x-3) 八4)+0.01)end调用fx.m的命令文件:» a=fx(1 2;2 3;4 3)运行结果:0.971610.990110.9901100.90911.2340100.90917.已知y=/(40)/ (30) + / (20)当 f (n)=n+101n(n2+5)时,求 y 的值。函数文件fn.m:function x=fn(n) x=
8、n+10*log (22 + 5) end调用fn.m的命令:y=fn(40)/(fn(30)+fn (20)运行结果:0.6390五、实验小结和心得通过木次实验,我了解了 matlab的工作模式和m文件的构成规则,了解 了命令m文件和函数m文件的异同。会matlab的m文件的创建与修改,会 使用函数句柄调用函数,会运用顺序结构、循环结构和分支结构进行计算机编程。 会控制matlab的程序流,熟悉了应用程序设计的基本步骤。能对文件进行简 单操作,会调试和优化所设计的程序。对应用程序接口的设计也有所了解。 matlab语言被称为第四代编程语言,程序简洁、可读性很强,而且调试十分 容易。它是matlab垂要组成部分。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026安排值班表面试题及答案
- 电气检修班技术资料管理制度培训
- 2026爱康销售面试题及答案
- 事故预想管理标准培训课件
- 特种设备安全事故报告处理制度培训
- 《物联网概论》课件 8.4数据存储和管理
- 电力工程安全管理制度培训
- T∕XYZJY 007-2026郴心服务涉旅企业旅游服务规范 第7部分:旅游客运
- 单位后勤维修外包合同
- 2025年氢燃料船舶加注 infrastructure建设规划
- 2025年吉林省长春市中考生物真题(含答案)
- 协助执法工作制度
- 电器促销活动方案
- 仓库高处坠落事故案例分析
- 【初中语文】整本书阅读《钢铁是怎样炼成的》课件-2025-2026学年统编版语文七年级下册
- 物业管理执行力培训课件
- 2024年江苏省苏州市常熟市小升初数学试卷(含答案解析)
- 2025年重庆万州中考化学真题及答案
- 地铁服务礼仪培训课件
- 家用空调维保合同模板
- 中国铁塔2025校园招聘正式启动笔试参考题库附带答案详解(3卷)
评论
0/150
提交评论