




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验三 MATLAB程序设计一、实验目的1、掌握建立和执行M文件的方法。2、掌握选择结构、多分支选择结构程序的编程方法。 3、掌握多种循环结构程序的编程方法。4、掌握定义函数文件和调用函数文件的方法。二、实验内容1、MATLAB M文件的创建与使用。(1) 建立自己工作目录,如D:MATLAB。在File菜单中,单击Set Path菜单项,在弹出对话框中建立目标文件夹,:单击Add Folder按钮,将自己的工作目录D:MATLAB添加到搜索目录之中,按Save按钮保存,如图1。图1 工作目录设置(2) 在M文件编辑器中编制命令行文件。在File菜单中,单击NewM-File,弹出M文件编辑器,如图2:图2 编辑器在编辑器中输入如下命令程序:%求小于2000且为2的整数次幂的正整数。 f(1)=2; k=1; while f(k)1000 f(k+1)=f(k)*2; k=k+1; end f,k调试后,将其以test1.m形式保存在D:MATLAB中。(3) 命令行程序运行。进入命令窗口,键入test1,观察运行结果:(4) 按上述步骤,在在编辑器中输入如下函数文件:function f=tt(n) %求小于任何正整数且为2的整数次幂的正整数。 %c=n(n) %n可取任意正整数。 % %2004年8月。 f(1)=2; k=1; while f(k)ceil(n/2) %ceil函数取最近的正整数 f(k+1)=f(k)*2; k=k+1; end f调试后,将其以test2.m形式保存在D:MATLAB中。(5) 进入命令窗口,键入test2(9),观察程序运行结果。2、编写一个函数M文件,计算下面函数的值,给出标量x的值,调用该函数后,返回y的值。选择一些数据测试编写的函数。function y(x)%UNTITLED7 Summary of this function goes here% Detailed explanation goes hereif x=0 sin(x)endif 0x&x3 -x+6end end3、编写一个函数M文件,返回向量x中元素的和、平均值、最大值、最小值、均方根值。其中方均根值(Root Mean Square)的计算公式为:并用下面数据测试你写的函数:(1) x=sin(0:0.01:6*pi)(2) x=rand(1,200),得到的x为200个(0,1)之间均匀分布的随机数。(3) function fun(x)(4) %UNTITLED Summary of this function goes here(5) % Detailed explanation goes hereg(6) sum(x)(7) mean(x)(8) max(x)(9) min(x)(10) sqrt(meansqr(x)(11) end4、编写一个函数M文件,若给出一个向量,函数返回如下范德蒙矩阵。例如在命令窗口输入v=myvander(2 3 4 5),得,同时生成一些数据测函数。function fun4_vander(A)%UNTITLED Summary of this function goes here% Detailed explanation goes hererot90(vander(A) end5、分别使用while和for编写命令文件,用循环语句编程计算s值:同时对编写的文件设置断点,观察变量取值的变化情况。function fun5()%UNTITLED Summary of this function goes here% Detailed explanation goes heren=2;s=0;while n0&rem(x,1)=0 disp(x)while x=1 if rem(x,2)=1 x=x*3+1; disp(-) disp(x) end x=x/2; disp(-) disp(x)endendif rem(x,1)=0|x0 disp(x) end end建立命令M文件,完成上述功能,要求显示数字处理过程。7、设计一个学生身高的管理系统,输出身高的基本分为5等:很高、较高、中等、较矮、矮,其中190cm以上为“很高”,180cm,190cm)区间为“较高”,170cm,180cm)为“中等”,1160cm,170cm)为“较矮”,160cm以下为“矮”,要求分别用if语句和switch语句实现function fun7(x)%UNTITLED3 Summary of this function goes here% Detailed explanation goes hereswitch(fix(x/10) case 18 disp() case 17 disp() case 16 disp()endif x=190 disp() endend 8、Fibonacci数组的元素满足Fibonacci规则:ak+2=ak+ak+1,(k=1,2,3,);且a1= a2=1。请设计一段程序,求出该数组中第一个大于10000的元素要求显示的结果为:i=21a(i)=10946或者a(21)=10946function fun8()%UNTITLED4 Summary of this function goes here% Detailed explanation goes herea=1,1;i=2;while a(i)10100,并求出n!”function fun10(n)%UNTITLED2 Summary of this function goes here% Detailed explanation goes herem=n;while factorial(n)10100 n=n-1;endnfor i=1:m if factorial(i)10100 disp(i-1) break endend end 11、下列程序用来判断一个人的体温是否处于危险状态。调试程序是否正确,如果程序错误指出错误在哪里?并写出正确答案。temp=input(请输入体温: temp = );if temp 36.5disp(体温正常);elseif temp 38.0disp(体温偏高!);elseif temp 39disp(体温高!);endfunction fun11()%UNTITLED3 Summary of this function goes here% Detailed explanation goes heretemp=input(: temp = );if temp 39 disp();elseif temp 38.0 disp();elseif temp 36.5 disp(); end end 12、使用嵌套for循环命令创建下列矩阵:function fun12()%UNTITLED4 Summar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论