




已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数学实验 MATLAB编程与作图 数据的输出格式 MATLAB用十进制数表示一个常数,具体可 采用日常记数法和科学记数法两种表示方法 。 数据输出时用户可以用format命令设置或改 变数据输出格式。format命令的格式为: format 格式符 注意,format命令只影响在屏幕上的显示数 据输出格式,而不影响数据的计算和存储 ,MATLAB的数据存储和运算总是以双精度 进行的。 可用菜单File/Preferences中的Command Window 里的Numarical Format来设定数据显示方式,有short( 小数点后4位), long(15位数字), bank(小数点后2位), short e(5位科学计数法), long e(15位科学计数法), rat(最接近的有理数). 也可在Command Window中用命令设置,例如: format long format short :5位定点格式,如 1.4142 format long :15位定点格式,如 1.41421356237310 format short e :5位浮点,如1.4142e+000 format long e :15位浮点,如 1.414213562373095e+000 format short g :5位定点或浮点取优,如1.4142 format long g:15位定点或浮点取优,如 1.4142135623731 format hex :十六进制数,如3ff6a09e667f3bcd format bank :货币格式,如1.41 format rat :分数之比,如1393/985 format +:若为正数则显示+,若为负数则显示-,若为0 则显示空 如 format short %设置定点格式,显 示5位 pi ans = 3.1416 format long %设置定点格式,显示 15位 pi ans = 3.14159265358979 关系与逻辑运算 1. 关系操作符 2. 逻辑运算符 MATLAB流程控制 循环语句 for, while 条件转移 if end, if elseif else end 开关语句 switch case 注释语句 % 中断语句 break 暂停语句 pause 回显语句 echo on/off 选择结构 1. if语句 在MATLAB中,if语句有3种格式。 1.单分支if语句 语句格式为: if 条件 语句组 end 当条件成立时,则执行语句组,执行完之 后继续执行if语句的后继语句,若条件不成立 ,则直接执行if语句的后继语句。 2.双分支if语句 语句格式为: if 条件 语句组1 else 语句组2 end 当条件成立时,执行语句组1,否则执行语句组 2,语句组1或语句组2执行后,再执行if语句的 后继语句。 例1. 计算分段函数值 程序如下: x=input(请输入x的值:); if x=10 y=cos(x+1)+sqrt(x*x+1); else y=x*sqrt(x+sqrt(x); end y 请输入x的值: y = 47.1893 12 1.m 3.多分支if语句 语句格式为: if 条件1 语句组1 else if 条件2 语句组2 else if 条件m 语句组m else 语句组m+1 end 例2. 输入一个字符,若为大写字母,则输出其 后继字符,若为小写字母,则输出其前导字符 ,若为数字字符则输出其对应的数值,若为其 他字符则原样输出。 c=input(请输入一个字符,s); if c=A end end a= 1.0000 0.5000 0.3333 0.2500 0.2000 0.5000 0.3333 0.2500 0.2000 0.1667 0.3333 0.2500 0.2000 0.1667 0.1429 0.2500 0.2000 0.1667 0.1429 0.1250 0.2000 0.1667 0.1429 0.1250 0.1111 例5. 已知求y的表达式, 当n=100时,求y的值。 在实际MATLAB编程中,为提高程序的执行速度,常 用向量运算来代替循环操作: n=100; i=1:n; f=1./i.2; y=sum(f) 程序如下: y=0;n=100; for i=1:n y=y+1/i/i; end y y = 2047/1252 for语句更一般的格式 : for 循环变量=矩阵表达式 循环体语句 end 执行过程是依次将矩阵的各列元素赋给 循环变量,然后执行循环体语句,直至 各列元素处理完毕。实际上,“表达式1: 表达式2:表达式3”是一个仅为一行的矩阵 (行向量),因而列向量是单个数据。 例6. 已知5个学生4门功课的成绩,求每名学生 的总成绩。 程序如下:try.m s=0; a=65,76,56,78;98,83,74,85;76,67,78,79;98,58,42,73;67,89,76,87 for k=a s=s+k; end disp(s); a = 65 76 56 78 98 83 74 85 76 67 78 79 98 58 42 73 67 89 76 87 275 340 300 271 319 2. while语句 while语句一般用于不能事先确定循环次数 的情况 while语句的一般格式为: while (条件) 循环体语句 end 其执行过程为:若条件成立,则执行循环 体语句,执行后再判断条件是否成立,如 果不成立则跳出循环(如图3.5所示)。 While循环和for循环的区别在于,while循环结构的 循环体被执行的次数不是确定的,而for结构中循环 体的执行次数是确定的。 例7. 用循环求解 例8. 用循环求解 最小的 m 例9. 用while循环语句编写一个计算1000以 内的Fibonacci数:5.m f=1 1; i=1; while f(i)+f(i+1)1000 f(i+2)=f(i)+f(i+1); i=i+1; end f= 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 例10. 产生一个长度为的调和数列。 程序如下: X=zeros(1,6); i=1; while i=6 X(i)=1/i; i=i+1; end format rat %使用分数表示数值 disp(X) Columns 1 through 5 1 1/2 1/3 1/4 1/5 Column 6 1/6 与循环结构相关的还有一个break语句,当在循 环体内执行到该语句时,程序将跳出循环。该 语句一般与if语句配合使用。 例11. 用while语句实现例5。6.m 程序如下: y=0; i=1; while 1 f=1/i/i; y=y+f; if i=100 break; end i=i+1; end y 3. 循环的嵌套 如果一个循环结构的循环体又包括一个循环 结构,就称为循环的嵌套,或称为多重循环 结构。可以按照嵌套层数,分别叫做二重循 环、三重循环等。处于内部的循环叫作内循 环,处于外部的循环叫作外循环。 在设计多重循环时,要特别注意内、外循环 之间的关系,以及各语句放置的位置,不要 搞错。 例12. 用筛选法求某自然数范围内的全部 素数。 程序如下: m=input(m=); p=2:m; for i=2:sqrt(m) n=find(rem(p,i)=0 p(n)=; end p m=100 p = Columns 1 through 5 2 3 5 7 11 Columns 6 through 10 13 17 19 23 29 Columns 11 through 15 31 37 41 43 47 Columns 16 through 20 53 59 61 67 71 Columns 21 through 25 73 79 83 89 97 7.m 小结:MATLAB程序的基本组成结构 说明 清除命令:清除workspace中的变量和图形( clear,close) 定义变量:包括全局变量的声明及参数值的设定 逐行执行命令:指MATLAB提供的运算指令或工具箱 提供的专用命令 控制循环 : 包含for,if then,switch,while等语句 逐行执行命令 end 绘图命令:将运算结果绘制出来 当然更复杂程序还需要调用子程序,或与simulink以 及其他应用程序结合起来。 二维图形三维图形图形处理 实例 特殊二、三维图形 MATLAB提供多种图形功能,使你的数据或函数可 视化,使数据不再是枯燥乏味的。使用MATLAB的图形 函数,可以绘制二维或三维的数据图形和函数图形, 如数据的散点图、直方图、茎干图、饼图、阶梯图和 面积图等。使数据可视化的基本步骤是: 1.准备好数据; 2.选择适用的绘制图形函数; 3.选择窗口和位置; 4.编辑图形标注和说明; 5.输出或保存图形。 MATLAB提供了丰富的绘图功能 help graph2d可得到所有画二维图形的命令 help graph3d可得到所有画三维图形的命令 MATLAB作图是通过描点、连线来实现的,故在 画一个曲线图形之前,必须先取得该图形上的 一系列的点的坐标(即横坐标和纵坐标),然 后将该点集的坐标传给MATLAB函数画图. 命令为: plot(X,Y,S) plot(X,Y) 画实线 plot(X,Y1,S1,X,Y2,S2,X,Yn,Sn) 将多条线画在一起 X,Y是向量,分别表示点集的横坐标和纵坐标 线型 y 黄色 . 点 - 连线 m 洋红 o 圈 : 短虚线 c 蓝绿色 x x-符号 -. 长短线 r 红色 + 加号 - 长虚线 1.曲线图 例 在0,2 用红线画sin x,用绿圈画cos x. x=linspace(0,2*pi,30); y=sin(x); z=cos(x); plot(x,y,r,x,z, g0) 解 MATLAB liti1 2.符号函数(显函数、隐函数和参数方程)画图 (1) ezplot ezplot(x(t),y(t),tmin,tmax) 表示在区间tminttmax绘制参数方程 x=x(t),y=y(t)的函数图. ezplot(f(x),a,b) 表示在axb绘制显函数f=f(x)的函数图. ezplot(f(x,y),xmin,xmax,ymin,ymax) 表示在区间xminxxmax和 yminyymax绘制 隐函数f(x,y)=0的函数图. 例 在0, 上画y=cos x 的图形. 解 输入命令 ezplot(sin(x),0,pi) MATLAB liti25 解 输入命令 ezplot(cos(t)3,sin(t)3,0.2*pi) MATLAB liti41 解 输入命令 ezplot(exp(x)+sin(x*y),-2,0.5,0,2) MATLAB liti40 (2) fplot 注意: 1 fun必须是M文件的函数名或是独立变量为 x的字符串. 2 fplot函数不能画参数方程和隐函数图形 ,但在一个图上可以画多个图形. fplot(fun,lims) 表示绘制字符串fun指定的函数在 lims=xmin,xmax的图形. 解 先建M文件myfun1.m: function Y=myfun1(x) Y=exp(2*x)+sin(3*x.2) 再输入命令: fplot(myfun1,-1,2) MATLAB liti43 MATLAB liti28 解 输入命令: fplot(tanh(x),sin(x),cos(x),2*pi*-1 1 1 1) 例 在-2,2范围内绘制函数tanh的图形. 解 fplot(tanh,-2,2) MATLAB liti42 3. 对数坐标图 在很多工程问题中,通过对数据进行对数转换可以 更清晰地看出数据的某些特征,在对数坐标系中描绘数 据点的曲线,可以直接地表现对数转换.对数转换有双对 数坐标转换和单轴对数坐标转换两种.用loglog函数 可以实现双对数坐标转换,用semilogx和semilogy 函数可以实现单轴对数坐标转换. loglog(Y) 表示 x、y坐标都是对数坐标系 semilogx(Y) 表示 x坐标轴是对数坐标系 semilogy(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/IEC 29167-11:2025 EN Information technology - Automatic identification and data capture techniques - Part 11: Crypto suite PRESENT-80 security services for air interface
- 2025年生物技术行业生物医药新药研发前景分析报告
- 2025年家电维修行业维修服务市场前景分析报告
- 2025年医疗器械行业智能医疗机器人技术前景报告
- 2025年智能电子行业智能化电子产品发展趋势与市场前景研究报告
- 2025年生物科技行业生物技术在农业领域的应用与发展前景研究报告
- 2025年网约车行业共享出行市场前景预测报告
- 崇阳县2025年湖北咸宁崇阳县事业单位招聘工作人员97人(含医疗岗45人)笔试历年参考题库附带答案详解
- 国家事业单位招聘2025中央民族乐团应届毕业生招聘4人笔试历年参考题库附带答案详解
- 国家事业单位招聘2025中国极地研究中心(中国极地研究所)招聘应届毕业生(硕士岗)拟聘笔试历年参考题库附带答案详解
- 《土地变更调查讲义》课件
- 财务整账合同模板
- 2020年水利水电工程标准施工招标文件
- 《农产品安全与质量检测》课件-3.2.食品中的灰分的测定
- 钢结构厂房排水系统安装方案
- 对新员工保密基本培训
- 口耳目手足课件
- 2024-2025学年湖北省武汉二中广雅中学九年级上学期9月月考数学试题及答案
- 箱式变电站技术规范应答
- 2024年新北师大版七年级上册数学教学课件 第三章 整式及其加减 1 代数式 第1课时 代数式
- 2024 年甘肃省职业院校技能大赛高职组公共管理与服务类人力资源服务赛项竞赛规程
评论
0/150
提交评论