版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2015秋2013级MATLAB程序设计实验报告2015秋2013级MATLAB程序设计实验报告实验一 班级:软件131 姓名:付云雷 学号:132872一、实验目的:1、了解MATLAB程序设计的开发环境,熟悉命令窗口、工作区窗口、历史命令等窗口的使用。2、掌握MATLAB常用命令的使用。3、掌握MATLAB帮助系统的使用。4、熟悉利用MATLAB进行简单数学计算以及绘图的操作方法。二、实验内容:1、启动MATLAB软件,熟悉MATLAB的基本工作桌面,了解各个窗口的功能与使用。图1 MATLAB工作桌面2、MATLAB的常用命令与系统帮助:(1) 系统帮助help:用来查询已知命令的用法。
2、例如已知inv是用来计算逆矩阵,键入help inv即可得知有关inv命令的用法。lookfor:用来寻找未知的命令。例如要寻找计算反矩阵的命令,可键入 lookfor inverse,MATLAB即会列出所有和关键字inverse相关的指令。找到所需的命令後 ,即可用help进一步找出其用法。(2) 数据显示格式:常用命令: 说明format short 显示小数点后4位(缺省值) format long 显示15位format bank 显示小数点后2位format + 显示+,-,0format short e 5位科学记数法format long e 15位科学记数法format ra
3、t 最接近的有理数显示(3) 命令行编辑:键盘上的各种箭头和控制键提供了命令的重调、编辑功能。具体用法如下:-重调前一行(可重复使用调用更早的)-重调后一行-前移一字符-后移一字符home-前移到行首end-移动到行末esc-清除一行del-清除当前字符backspace-清除前一字符(4) MATLAB工作区常用命令:who-显示当前工作区中所有用户变量名 whos-显示当前工作区中所有用户变量名及大小、字节数和类型disp(x) -显示变量X的内容clear -清除工作区中用户定义的所有变量save文件名-保存工作区中用户定义的所有变量到指定文件中load文件名-载入指定文件中的数据3、在
4、命令窗口执行命令完成以下运算,观察workspace的变化,记录运算结果。(1) 计算(365-52´2-70)¸3(2) >>area=pi*2.52(3) 已知x=3,y=4,在MATLAB中求z:(4) 利用who,whos命令查看工作空间内的所有变量,并比较两种命令区别。(5) 使用clear命令删除工作空间内的所有变量。提示:MATLAB有一些永久常数(Permanent Constants)如表所示,虽然在工作空间中看不到,但使用者可直接取用。表1.1 MATLAB中常用的变量,常量特殊的变量、常量取 值ans用于结果的缺省变量名pi圆周率的近似值(
5、3.1416)eps数学中无穷小(epsilon)的近似值(2.2204e - 016)inf无穷大,如 1/0 = inf (infinity)NaN非数,如 0/0 = NaN (Not a Number),inf / inf = NaNi,j虚数单位:i = j =(6) 将下面的矩阵赋值给变量m1,在workspace中察看m1在内存中占用的字节数。m1=执行以下命令,观察结果:>>m1(2,3)>>m1(11)>>m1(:,3)>>m1(2:3,1:3)>>m1(1,4) + m1(2,3) + m1(3,2) + m1(4
6、,1)(7) 执行命令>>help abs,查看函数abs的用法及用途,计算abs(3 +4i)。(8) 执行命令:>>x=0:0.1:6*pi;>>y=5*sin(x);>>plot(x,y)(9) 在matlab的命令窗口里完成如下计算,其中t的值分别取-1,0,1,表达式如下:(10) 求方程组的根:(11) 一个多项式的系数向量是p=1 -6 -72 -27,求这个多项式的根并写出多项式。 x3-6x2-72x-27=04、思考题(1) 以下变量名是否合法?为什么?a) x2 合法b) 3col 不合法c) _row 不合法d) For
7、不合法(2) 求以下变量的值,并在MATLAB中验证。a) a=1:2:5;b) b=a' a' a'c) c=a+b(2,:)2015秋2013级MATLAB程序设计实验报告实验二 班级:软件131 姓名:付云雷 学号:132872一、实验目的1、掌握矩阵和数组的表示与赋值方法2、了解字符串、结构和单元等数据类型在MATLAB中的使用 3、掌握MATLAB中基本的数值运算,了解基本统计函数的使用4、掌握多项式基本运算以及线性方程组的求解方法二、实验内容1、利用“:”操作符和linspace函数生成数组a=0,6,12,18,24,30,36,42,并将数组a分别转化为
8、4*2和2*4的矩阵。2、在MATLAB中输入矩阵,并使用MATLAB回答以下的问题:(1) 创建一个由A中第2列到第4列所有元素组成的43数组B;(2) 创建一个由A中第3行到第4行所有元素组成的24数组C;(3) 创建一个由A中前两行和后三列所有元素组成的23数组D;(4) 根据A利用单下标方法和双下标方法分别创建向量a=-5 6 15和向量b=6 8 1,并利用向量a和b生成矩阵;(5) 利用“”删除矩阵A的第二行和第三列。3、利用ones()函数和zero()函数生成如下矩阵:4、生成矩阵:(1) 取出所有大于0的元素构成一个向量a(可推广到从一个矩阵里筛选出符合条件的元素组成一个向量
9、)。(2) 将原矩阵中大于0的元素正常显示,而小于等于0的元素全部用0来表示(可推广到将原矩阵中不符合条件的全用0来表示,符合条件的值不变)。5、已知,下列运算是否合法,为什么?如合法,写出计算结果?(1)result1=a' %合法,将矩阵转置(2)result2=a*b %不合法,a和b矩阵不能相乘(3)result3=a+b %合法,将a和b矩阵对应元素相加(4)result4=b*d %合法,将b和d矩阵相乘(5)result5=b;c'*d %合法(6)result6=a.*b %合法,将a和b对应元素相乘(7)result7=a./b %合法,用a除以b中对应元素(
10、8)result8=a.*c %不合法,a和c不能进行.*运算(9)result9=a.b %合法,用b除以a中对应元素(10)result10=a.2 %合法,将a中所有元素平方(11)result11=a2 %不合法,a必须为方阵(12)result11=2.a %合法,将2a(I,j)构成新矩阵的第(I,j)个元素6、已知(1) 求a+b,a*b,a.*b,a/b,a./b,a2,a.2的结果,并观察运算结果。(2) 求c中所有元素的平均值、最大值、中值,并将c中元素按从小到大顺序排列。(3) 解释b(2:3,1,3)的含义,并将生成的数组赋值给d。 得到第二行到第三行中第一列和第三列的
11、元素并构成矩阵。关系运算与逻辑运算7、已知a=20,b=-2,c=0,d=1,计算下列表达式:(1) r1=a>b(2) r2=a>b&c>d(3) r3=a=b*(-10)(4) r4=b|c8、已知(1) 求矩阵A的秩(rank);(2) 求矩阵A的行列式(determinant);(3) 求矩阵A的逆(inverse);(4) 求矩阵A的特征值及特征向量(eigenvalue and eigenvector)。9、已知多项式f1(x)=2x4-x2+3x+2,f2(x)=3x+2,利用MATLAB进行如下计算:(1) 计算两多项式的乘法和除法;(2) 求多项式f
12、1(x)的根;(3) 分别计算多项式当x=3以及时的值。10、用两种方法求下列方程组的解,并比较两种方法执行的时间。11、建立一个元胞数组,要求第一个元素为44的魔术矩阵,第二个元素为18.66,第三个元素为'matlab',第四个元素为等差数列7,9,11,1399。计算第一个元胞第4行第2列加上第二个元胞+第三个元胞里的第二个元素+最后一个元胞的第10个元素。12、建立一个结构体的数组,包括3个人,字段有姓名,年龄,分数,其中分数由随机函数产生一个3行10列的数据表示了有10门课程,每门课程有三个阶段的分数。问题是:(1) 如何找到第2个人的分数并显示出来;(2) 如何找到
13、第2个人的每门课程3个阶段的平均分数并显示出来;(3) 所有同学的10门课程的每门课程的平均分如何计算出来?要求放到一个数组里;(4) 找到这个班所有同学的姓名放到一个元胞数组里;13、完成以下操作:(1) 已有str=decision 20 made on 10/20/10,查找字符串中20出现的位置。(2) 有字符串s1=matlabexpress,s2=matlabexcellent,比较两个字符串的前8个字符是否相同,相同输出1,否则输出0。(3) 统计字符串s1=matlabexpress中ex出现的次数,并替换为EX。2015秋2013级MATLAB程序设计实验报告实验三 班级:软
14、件131 姓名:付云雷 学号:132872一、实验目的1、掌握建立和执行M文件的方法。2、掌握选择结构、多分支选择结构程序的编程方法。 3、掌握多种循环结构程序的编程方法。4、掌握定义函数文件和调用函数文件的方法。二、实验内容1、MATLAB M文件的创建与使用。(1) 建立自己工作目录,如D:MATLAB。在File菜单中,单击Set Path菜单项,在弹出对话框中建立目标文件夹,:单击Add Folder按钮,将自己的工作目录D:MATLAB添加到搜索目录之中,按Save按钮保存,如图1。图1 工作目录设置(2) 在M文件编辑器中编制命令行文件。在File菜单中,单击New>M-Fi
15、le,弹出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
16、)<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的值。选择一些数据测试编写的函数。3、编写一个函数M文件,返回向量x中元素的和、平均值、最大值、最小值、均方根值。其中方均根值(Root Mean Square)的计算公式为:并用下面数据测试你写的函数:(1) x=sin(0:0.01:6*pi)(2) x=rand(1,200),得到
17、的x为200个(0,1)之间均匀分布的随机数。4、编写一个函数M文件,若给出一个向量,函数返回如下范德蒙矩阵。例如在命令窗口输入>>v=myvander(2 3 4 5),得,同时生成一些数据测函数。5、分别使用while和for编写命令文件,用循环语句编程计算s值:同时对编写的文件设置断点,观察变量取值的变化情况。6、数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。重复此过程,最终得到的结果为1。如:2®13®10®5®16®8®4®2®16®3
18、174;10®5®16®8®4®2®1建立命令M文件,完成上述功能,要求显示数字处理过程。7、设计一个学生身高的管理系统,输出身高的基本分为5等:很高、较高、中等、较矮、矮,其中190cm以上为“很高”,180cm,190cm)区间为“较高”,170cm,180cm)为“中等”,1160cm,170cm)为“较矮”,160cm以下为“矮”,要求分别用if语句和switch语句实现8、Fibonacci数组的元素满足Fibonacci规则:ak+2=ak+ak+1,(k=1,2,3,);且a1= a2=1。请设计一段程序,求出该数组中第一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《外贸单证资料》课件
- 《科学小品文的学习》课件
- 2024年度地铁食堂承包经营合同
- 委托书合同范文
- 2024年度高速公路车辆保险合同:全路网
- 2024年度技术研发与技术服务委托合同3篇
- 2024年废弃物处理站吊车清运服务合同
- 二零二四年度高速公路路面铺设合同
- 公对私借款合同范本
- 煤矿合同范本
- 精益生产成熟度评估表
- 化工仪表基础培训调节阀
- 视觉设计行业SWOT分析报告-第2篇
- 伪装隐身技术
- 【上教版九年级化学上册】《化学反应中的质量关系》示范公开课教案
- 富宁县方鑫黄金矿业有限责任公司毛姐山金矿矿山地质环境保护与土地复垦方案
- 1000个好听的男孩英文名字大全
- 《中小学美术教学论》第五章 中小学美术教学的过程
- (57)-25.2.1五味子与五倍子
- 企业文化、廉政考试
- 生态文旅休闲片区控制性详细规划
评论
0/150
提交评论