好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

MATLAB编程与作.ppt

47页
  • 卖家[上传人]:xian****812
  • 文档编号:301716488
  • 上传时间:2022-05-31
  • 文档格式:PPT
  • 文档大小:264KB
  • / 47 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 数学实验数学实验 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 longformat short :5位定点格式,如位定点格式,如 format long :15位定点格式,如位定点格式,如 format short e :5位浮点,如位浮点,如1.4142e+000format long e :15位浮点,如位浮点,如format short g :5位定点或浮点取优,如位定点或浮点取优,如format long g:15位定点或浮点取优,如位定点或浮点取优,如format hex :十六进制数,如:十六进制数,如3ff6a09e667f3bcdformat bank :货币格式,如:货币格式,如format rat :分数之比,如:分数之比,如1393/985format +:若为正数则显示:若为正数则显示+,若为负数则显示,若为负数则显示-,若为,若为0则显示空则显示空如 format short %设置定点格式,显示5位 pians = 3.1416 format long %设置定点格式,显示15位 pians = 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 =12 3.多分支if语句语句格式为:if 条件1 语句组1 else if 条件2 语句组2 else if 条件m 语句组m else 语句组m+1end 例2. 输入一个字符,若为大写字母,则输出其后继字符,若为小写字母,则输出其前导字符,若为数字字符则输出其对应的数值,若为其他字符则原样输出。

      c=input(请输入一个字符,s); if c=A & c=a& c=0& c *Inner matrix dimensions must agree. 循环结构1. for语句 基本格式基本格式for for 循环变量起始值:步长:终止值循环变量起始值:步长:终止值 循环体循环体 end end步长缺省值为步长缺省值为1,可以在正实数或负实数范围内任意指定可以在正实数或负实数范围内任意指定对于正数,循环变量的值大于终止值时,循环结束;对对于正数,循环变量的值大于终止值时,循环结束;对于负数,循环变量的值小于终止值时,循环结束循环于负数,循环变量的值小于终止值时,循环结束循环结构可以嵌套使用结构可以嵌套使用 for i=1:5for i=1:5 for j=1:5 for j=1:5 a(i,j)=1/(i+j-1); a(i,j)=1/(i+j-1); end endendenda=a= 例例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 yy = 2047/1252 for语句更一般的格式:语句更一般的格式:for 循环变量=矩阵表达式 循环体语句 end 执行过程是依次将矩阵的各列元素赋给循环变量,然后执行循环体语句,直至各列元素处理完毕。

      实际上,“表达式1:表达式2:表达式3”是一个仅为一行的矩阵(行向量),因而列向量是单个数据 例6. 已知5个学生4门功课的成绩,求每名学生的总成绩程序如下:s=0;a=65,76,56,78;98,83,74,85;76,67,78,79;98,58,42,73;67,89,76,87for k=a s=s+k;enddisp(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 其执行过程为:若条件成立,则执行循环体语句,执行后再判断条件是否成立,如果不成立则跳出循环(如图所示)While循环和循环和for循环的区别在于,循环的区别在于,while循环结构的循环结构的循环体被执行的次数不是确定的,而循环体被执行的次数不是确定的,而for结构中循环结构中循环体的执行次数是确定的体的执行次数是确定的例7. 用循环求解例8. 用循环求解 最小的 m例例9. 用用while循环语句编写一个计算循环语句编写一个计算1000以以内的内的Fibonacci数:数: 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 程序如下: 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=i); p(n)=; end pm=100p = 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 小结:小结:MATLAB程序的基本组成结构程序的基本组成结构说明说明清除命令:清除命令:清除清除workspace中的变量和图形中的变量和图形(clear,close)定义变量:定义变量:包括全局变量的声明及参数值的设定包括全局变量的声明及参数值的设定逐行执行命令:逐行执行命令:指指MATLAB提供的运算指令或工具箱提供的运算指令或工具箱 提供的专用命令提供的专用命令控制循环控制循环 : 包含包含for,if then,switch,while等语句等语句 逐行执行命令逐行执行命令 end绘图命令:绘图命令:将运算结果绘制出来将运算结果绘制出来当然更复杂程序还需要调用子程序,或与当然更复杂程序还需要调用子程序,或与simulink以以及其他应用程序结合起来。

      及其他应用程序结合起来二维图形二维图形三维图形三维图形图形处理图形处理实例实例特殊二、三维图形特殊二、三维图形MATLABMATLAB提供多种图形功能,使你的数据或函数可提供多种图形功能,使你的数据或函数可视化,使数据不再是枯燥乏味的使用视化,使数据不再是枯燥乏味的使用MATLABMATLAB的图形的图形函数,可以绘制二维或三维的数据图形和函数图形,函数,可以绘制二维或三维的数据图形和函数图形,如数据的散点图、直方图、茎干图、饼图、阶梯图和如数据的散点图、直方图、茎干图、饼图、阶梯图和面积图等使数据可视化的基本步骤是:面积图等使数据可视化的基本步骤是:1.1.准备好数据;准备好数据;2.2.选择适用的绘制图形函数;选择适用的绘制图形函数;3.3.选择窗口和位置;选择窗口和位置;4.4.编辑图形标注和说明;编辑图形标注和说明;5.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 liti12.符号函数符号函数(显函数、隐函数和参数方程显函数、隐函数和参数方程)画图画图(1) ezplotezplot(x(t),y(t),tm。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.