欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第二章-Matlab编程基础.pdf

    • 资源ID:70011480       资源大小:1.69MB        全文页数:45页
    • 资源格式: PDF        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第二章-Matlab编程基础.pdf

    基本要求:基本要求:(1)(1)(1)(1)了解了解MatlabMatlabMatlabMatlab的各种数据类型的各种数据类型(2)(2)(2)(2)掌握掌握MatlabMatlabMatlabMatlab的的运算符与操作符运算符与操作符的含义和用法的含义和用法 (3)(3)(3)(3)掌握掌握MatlabMatlabMatlabMatlab基本表达式并了解其常用函数分类基本表达式并了解其常用函数分类(4)(4)(4)(4)熟练掌握熟练掌握 MatlabMatlabMatlabMatlab 的的程序结构程序结构(顺序结构、循环(顺序结构、循环结构和分支结构结构和分支结构)与流程控制语句与流程控制语句 (5)(5)(5)(5)了解并初步掌握了解并初步掌握 MatlabMatlabMatlabMatlab 的的数据文件的读写数据文件的读写(6)(6)(6)(6)学会学会 MatlabMatlabMatlabMatlab 的的MMMM文件的编写方法,包括命令文文件的编写方法,包括命令文件和函数文件。了解件和函数文件。了解MMMM件的调试命令和调试方法件的调试命令和调试方法(7)(7)(7)(7)了解了解MatlabMatlabMatlabMatlab矩阵的运用矩阵的运用第二章第二章第二章第二章 MatlabMatlabMatlabMatlab语言程序设计语言程序设计语言程序设计语言程序设计 MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量语言的常量与变量语言的常量与变量 1 1 1 1、MatlabMatlabMatlabMatlab数据类型数据类型 search Data Types search Data Types search Data Types search Data Types变量和常量变量和常量数字变量的格式数字变量的格式字符串字符串单元型变量单元型变量结构型变量结构型变量矩阵、向量矩阵、向量多项式多项式 MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量a)a)a)a)变量和常量变量和常量 变量变量(包括函数包括函数)的的命名规则命名规则:由英文字母、数字和下:由英文字母、数字和下划线混合组成,不得包含空格和标点划线混合组成,不得包含空格和标点 ;第一个字符必;第一个字符必须是英文字母,最多包括须是英文字母,最多包括31313131个字符个字符;对字母的大小写对字母的大小写敏感敏感。局部变量和全局变量局部变量和全局变量 永久变量(常量)永久变量(常量)只能在某一函数体内使用,而不能从其他函数和只能在某一函数体内使用,而不能从其他函数和 MatlabMatlabMatlabMatlab工作空间访问的变量,就是工作空间访问的变量,就是局部变量局部变量。在几个函数及在几个函数及MatlabMatlabMatlabMatlab函数中都能使用的变量就是函数中都能使用的变量就是全局全局变量。变量。(全局变量名应尽可能大写,并由(全局变量名应尽可能大写,并由globeglobeglobeglobe声明)声明)MatlabMatlabMatlabMatlab永久变量永久变量MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量b)b)b)b)数字变量数字变量 MatlabMatlabMatlabMatlab内部的每一个数据元素都是用内部的每一个数据元素都是用双精度数(双精度数(doubledoubledoubledouble)来表示和存储的。来表示和存储的。变量输出时用户可以用变量输出时用户可以用formatformatformatformat命令设置或改变输出格式。命令设置或改变输出格式。短格式短格式(Short)Short)Short)Short):1.3333 0.00001.3333 0.00001.3333 0.00001.3333 0.0000短格式短格式e e e e方式方式(Short e)Short e)Short e)Short e):1.3333e1.3333e1.3333e1.3333e+00 1.2345+00 1.2345+00 1.2345+00 1.2345e-06e-06e-06e-06短格式短格式g g g g方式方式(Short g)Short g)Short g)Short g):1.3333 0.01.3333 0.01.3333 0.01.3333 0.0长格式长格式(Long)Long)Long)Long):1.33333333333333 0.000001234500001.33333333333333 0.000001234500001.33333333333333 0.000001234500001.33333333333333 0.00000123450000长格式长格式e e e e方式方式(Long e)Long e)Long e)Long e):1.33333333333333e1.33333333333333e1.33333333333333e1.33333333333333e+00 1.2345000000000+00 1.2345000000000+00 1.2345000000000+00 1.2345000000000e-06e-06e-06e-06长格式长格式g g g g方式方式(Long g)Long g)Long g)Long g):1.33333333333333 0.00000123451.33333333333333 0.00000123451.33333333333333 0.00000123451.33333333333333 0.0000012345银行格式银行格式(Bank)Bank)Bank)Bank):1.33 0.001.33 0.001.33 0.001.33 0.00十六进制格式十六进制格式(Hex)Hex)Hex)Hex):3ff555555555 3eb46231abfd713ff555555555 3eb46231abfd713ff555555555 3eb46231abfd713ff555555555 3eb46231abfd71+格式格式(+)(+)(+)(+):+有理数(有理数(RationalRationalRationalRational):1/3 2469/20000000001/3 2469/20000000001/3 2469/20000000001/3 2469/2000000000MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量c)c)c)c)字符串字符串 所有字符串都用单引号括起来。所有字符串都用单引号括起来。s=matlab s=matlab s=matlab s=matlab 字符中中的每个字符字符中中的每个字符(包括空格)都是字符包括空格)都是字符串变量串变量(矩阵或向量矩阵或向量)中的一个元素。中的一个元素。字符串中的字符以字符串中的字符以 ASCII ASCII ASCII ASCII 码形式储存并区分码形式储存并区分大小大小 ,用用函数函数absabsabsabs可以看到字符的可以看到字符的ASCIIASCIIASCIIASCII码。码。在在MatlabMatlabMatlabMatlab中,中,字符串字符串和和字符矩阵字符矩阵基本上是等基本上是等价的。价的。s=matlab s=matlab s=matlab s=matlab 等价于等价于 s=matlab s=matlab s=matlab s=matlab MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量字符串函数字符串函数MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量字符串举例:字符串举例:A=China 中国%;输出带引号的汉字 B=我是好学生 c=I am fine.s3=char(s,y,m,b,o,l,i,c)%;用函数char生成字符串 double(s3)%;字符串转换为数值代码 abs(s3)cellstr(s3)%;字符矩阵转换为字符串 b=num2str(a)%;数字转换为字符串比较 b*2和str2num(b)*2 ab=A,B,.AB=中国;北京MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量d)d)d)d)单元型变量单元型变量 单元型变量是一种比较特殊的数据类型,本质上讲,单单元型变量是一种比较特殊的数据类型,本质上讲,单元型变量实际上是一种元型变量实际上是一种以任意形式的数据为元素的多维以任意形式的数据为元素的多维数组。数组。单元型变量可以存放任何类型、任何大小的数据,单元型变量可以存放任何类型、任何大小的数据,其其大小是不定的。大小是不定的。A=1,2;3,4A=1 2 3 4 B=1:4,A,abcdB=1x4 double 2x2 double abcdB B B B为单元为单元型型变量(用花括号)变量(用花括号)cellplot(B)celldisp(B)MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量 D.a1=abcd;D.a2=1;D.a3=1,2,3,4;DD=a1:abcd a2:1 a3:1 2 3 4D D D D为结构型变量为结构型变量e e e e)结构型变量结构型变量 结构型变量是另一种可以将不同类型数据组合在一起结构型变量是另一种可以将不同类型数据组合在一起的数据类型,与单元型变量的不同在于的数据类型,与单元型变量的不同在于结构结构型型变量是变量是以指针方式以指针方式来传递数据的。来传递数据的。C=struct(c1,1,c2,B,c3,abcd)C=1x3 struct array with fields:c1 c2 c3 C C C C为结构型变量为结构型变量MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量f)f)f)f)矩阵、向量矩阵、向量MatlabMatlabMatlabMatlab是以矩阵为基本运算单元的,是以矩阵为基本运算单元的,数组作为独立数组作为独立的计算单元实体是不存在的,的计算单元实体是不存在的,它的建立、存储完全它的建立、存储完全等同于矩阵,只是等同于矩阵,只是计算时计算时在符号上做了不同的约定。在符号上做了不同的约定。向量是组成向量是组成矩阵的基本元素矩阵的基本元素之一。可以把之一。可以把行向量行向量看看成成1 1 n n 阶矩阵,阶矩阵,把把列向量列向量看成看成n n 1 1阶矩阵。阶矩阵。向量的向量的基本运算采用基本运算采用数组运算数组运算法则。法则。参考:参考:Demos Basic Matrix OperationsDemos Basic Matrix OperationsDemos Demos Demos Demos MathematicsMathematicsMatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量h)h)h)h)多项式多项式 多项式是以多项式是以向量向量的形式表达的。可以是的形式表达的。可以是列向量列向量也也可以是可以是行向量行向量。p=1,2,3 poly2sym(p)ans=x2+2*x+3 m=3;4;5 poly2sym(m)ans=3*x2+4*x+5,.,.)(11011110nnnnnnaaaaPaxaxaxaxP=+=MatlabMatlabMatlabMatlab语言的常量与变量语言的常量与变量 MatlabMatlabMatlabMatlab语言的运算符语言的运算符语言的运算符语言的运算符 运算符与操作符运算符与操作符 数学运算符数学运算符操作符操作符冒号冒号“:”可以用来产生向量;可以用来产生向量;用作矩阵的下标,部分地选择矩阵元素;用作矩阵的下标,部分地选择矩阵元素;进行行循环操作。进行行循环操作。续号续号“”表示一行未完,而在下一行继续;表示一行未完,而在下一行继续;分号分号“;”在方括号中,表示矩阵中行的结尾;在方括号中,表示矩阵中行的结尾;用在每行的结尾,则用在每行的结尾,则 不显示该行运算的结果。不显示该行运算的结果。MatlabMatlabMatlabMatlab语言的运算符语言的运算符语言的运算符语言的运算符 关于逻辑真假的规定:关于逻辑真假的规定:在所有的关系表达式和逻辑表达式中,输入的任何在所有的关系表达式和逻辑表达式中,输入的任何非非 0 0 0 0 数都被看作是数都被看作是“逻辑真逻辑真”,而,而只有只有 0 0 0 0 才被认为是才被认为是“逻辑逻辑假假”;所有关系表达式和逻辑表达式的所有关系表达式和逻辑表达式的计算结果计算结果是一个是一个由由 0 0 0 0 和和 1 1 1 1 组成的组成的“逻辑矩阵(逻辑矩阵(Logical ArrayLogical ArrayLogical ArrayLogical Array)”。矩阵中的矩阵中的 1 1 1 1 表表示示“真真”,0 0 0 0 表示表示“假假”;逻辑矩阵是一种特殊的数值矩阵。逻辑矩阵是一种特殊的数值矩阵。与与“数值类数值类”有关的有关的操作和函数对它也适用操作和函数对它也适用;但它又不同于普通的;但它又不同于普通的“数值数值”,它还表示对事物的判断结论它还表示对事物的判断结论“真真”与与“假假”。MatlabMatlabMatlabMatlab语言的运算符语言的运算符语言的运算符语言的运算符 关系操作符关系操作符逻辑操作符逻辑操作符 MatlabMatlabMatlabMatlab语言的运算符语言的运算符语言的运算符语言的运算符 MATLAB MATLAB MATLAB MATLAB 的的关系操作符关系操作符运算法则:运算法则:当两个变量是当两个变量是标量标量 a a a a 和和 b b b b 时时 若若 a a a a、b b b b 之间关系成立,则关系运算结果为之间关系成立,则关系运算结果为 1 1 1 1;若若 a a a a、b b b b 之间关系不成立,则关系运算结果为之间关系不成立,则关系运算结果为 0 0 0 0;当两个维数相同的当两个维数相同的矩阵矩阵 A A A A 和和 B B B B 比较时,矩阵比较时,矩阵 A A A A、B B B B 比比较的是较的是相同位置的元素相同位置的元素,按标量的运算规则逐个进行。,按标量的运算规则逐个进行。关系运算的结果关系运算的结果是一个和是一个和 A A A A维数相同的矩阵,它的元维数相同的矩阵,它的元素由素由 0 0 0 0 和和 1 1 1 1 组成。组成。当一个当一个矩阵矩阵A A A A 和一个标量和一个标量 b b b b 比较时,把标量比较时,把标量 b b b b 和矩阵和矩阵A A A A 的的每一个元素每一个元素按标量关系运算规则逐个比较。关系按标量关系运算规则逐个比较。关系运算的结果运算的结果是一个和数组是一个和数组 A A A A维数相同的矩阵,它是由维数相同的矩阵,它是由 0 0 0 0 和和 1 1 1 1 组成。组成。优先级优先级 由高到低为由高到低为算术运算算术运算、关系运算关系运算和和逻辑运算。逻辑运算。MatlabMatlabMatlabMatlab语言的运算符语言的运算符语言的运算符语言的运算符 A=3,4,8;9,0,2;5,3,7A=3 4 8 9 0 2 5 3 7 B=4,4,1;7,8,4;5,1,7B=4 4 1 7 8 4 5 1 7 E=(AB)E=0 0 1 1 0 0 0 1 0 NE=(A=B)NE=1 0 1 1 1 1 0 1 0 A0=(A5)A0=0 0 1 1 0 0 0 0 1 B0=(B A=3,4,8;9,0,2;5,3,7A=3 4 8 9 0 2 5 3 7 B=4,4,1;7,8,4;5,1,7B=4 4 1 7 8 4 5 1 7 AB=A&BAB=1 1 1 1 0 1 1 1 1 A_B=A|BA_B=1 1 1 1 1 1 1 1 1 C=AC=0 0 0 0 1 0 0 0 0 cc=(A3)&(B t=6t=6 sin(5*t+6)ans=-0.9918 y=sin(5*t+6)y=-0.9918 MatlabMatlabMatlabMatlab语言的流程结构语言的流程结构语言的流程结构语言的流程结构 程序结构与流程控制语句程序结构与流程控制语句 a)a)a)a)顺序结构顺序结构b)b)b)b)条件结构条件结构if-else-end if-else-end if-else-end if-else-end 语句语句或或 MatlabMatlabMatlabMatlab语言的流程结构语言的流程结构语言的流程结构语言的流程结构 折扣问题折扣问题 book=20;number=40;sums=0.0;if number=30sums=book*number*0.7;end sums sums=560绘出函数绘出函数 的图像。的图像。x=-3:0.1:3;if x=1 y=2*x.2+1;plot(x,y)elseif-1x1 y=5;plot(x,y)else y=-x.3;plot(x,y)end No=input(Please input your choice!);Please input your choice!1 switch Nocase 0disp(return to main menu);case 1disp(She is a girl);case 2disp(He is a boy);otherwisedisp(I cant determine)endShe is a girl MatlabMatlabMatlabMatlab语言的流程结构语言的流程结构语言的流程结构语言的流程结构 c)c)c)c)循环结构循环结构while while while while 语句语句:forforforfor语句语句:for 变量=初值:增量:结束值 程序模块;end MatlabMatlabMatlabMatlab语言的流程结构语言的流程结构语言的流程结构语言的流程结构 sum=0;i=0;while(i sumsum=14196774举例举例:for I=1:10 A(I)=1/(I+1);end AA=Columns 1 through 7 0.5000 0.3333 0.2500 0.2000 0.1667 0.1429 0.1250 Columns 8 through 10 0.1111 0.1000 0.0909 MatlabMatlabMatlabMatlab语言的流程结构语言的流程结构语言的流程结构语言的流程结构 breakbreakbreakbreak语句语句循环结构循环结构continue continue continue continue 语句语句循环结构循环结构d)d)d)d)其它与流程控制有关的语句其它与流程控制有关的语句ifif MatlabMatlabMatlabMatlab语言的流程结构语言的流程结构语言的流程结构语言的流程结构 pause pause pause pause 指令指令使程序运行停止,等待用户按任意键继使程序运行停止,等待用户按任意键继续;续;input input input input 指令指令提示用户从键盘输入数值、字符串或表达提示用户从键盘输入数值、字符串或表达式,并接受输入;式,并接受输入;dispdispdispdisp指令指令在屏幕上显示字符串在屏幕上显示字符串;echo onecho onecho onecho on指令指令显示其后所有执行文件的指令;显示其后所有执行文件的指令;echo offecho offecho offecho off指令指令关闭其后所有执行文件的指令显示。关闭其后所有执行文件的指令显示。MatlabMatlabMatlabMatlab语言的流程结构语言的流程结构语言的流程结构语言的流程结构 数据数据文件的操作文件的操作参考参考Demos Reading Text FilesDemos Reading Text Files数据文件一般存放在磁盘介质上,用文件名标识,数据文件一般存放在磁盘介质上,用文件名标识,Matlab Matlab Matlab Matlab 系统对文件名没有特殊要求。数据文件的格式有两种形式:系统对文件名没有特殊要求。数据文件的格式有两种形式:一是二进制格式文件,二是一是二进制格式文件,二是ASCIIASCIIASCIIASCII文本文件。文本文件。a)a)a)a)数据文件的打开和关闭数据文件的打开和关闭用用fopenfopenfopenfopen函数打开数据文件:函数打开数据文件:FidFidFidFidfopen(filenamefopen(filenamefopen(filenamefopen(filename,permission);permission);permission);permission);FidFidFidFid为文件句柄,为文件句柄,filename filename filename filename 为文件名。为文件名。permission permission permission permission 为文件打为文件打开格式,可以是:开格式,可以是:r r r r ,w w w w ,a a a a ,r+r+r+r+,w+w+w+w+,a+a+a+a+。用用fclosefclosefclosefclose函数关闭数据文件:函数关闭数据文件:Sta=fclose(Fid);Sta=fclose(Fid);Sta=fclose(Fid);Sta=fclose(Fid);MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 b)b)b)b)数据文件的读写数据文件的读写用用freadfreadfreadfread读二进制数据文件:读二进制数据文件:A,COUNT=fread(Fid,size,precision)A,COUNT=fread(Fid,size,precision)A,COUNT=fread(Fid,size,precision)A,COUNT=fread(Fid,size,precision)其中其中:A A A A为数据矩阵,用于存放读取的数据;为数据矩阵,用于存放读取的数据;COUNTCOUNTCOUNTCOUNT返返所读取的数据元素个数所读取的数据元素个数,Fid Fid Fid Fid 为文件句柄,为文件句柄,sizesizesizesize为读取为读取范围,是可选项,若不选用则读取整个文件内容,范围,是可选项,若不选用则读取整个文件内容,precisionprecisionprecisionprecision用于控制所读数据的精度格式。用于控制所读数据的精度格式。例:例:Fid=fopen(Fid=fopen(Fid=fopen(Fid=fopen(std.datstd.datstd.datstd.dat ,r r r r ););););A=fread(Fid,100,A=fread(Fid,100,A=fread(Fid,100,A=fread(Fid,100,longlonglonglong ););););fclose(Fid);fclose(Fid);fclose(Fid);fclose(Fid);MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 用用fwritefwritefwritefwrite写二进制文件:写二进制文件:COUNT=fwrite(Fid,A,precision)COUNT=fwrite(Fid,A,precision)COUNT=fwrite(Fid,A,precision)COUNT=fwrite(Fid,A,precision)例:例:Fid=fopen(Fid=fopen(Fid=fopen(Fid=fopen(test.dattest.dattest.dattest.dat ,w w w w ););););cnt=fwrite(Fid,A,cnt=fwrite(Fid,A,cnt=fwrite(Fid,A,cnt=fwrite(Fid,A,floatfloatfloatfloat )fclose(Fid);fclose(Fid);fclose(Fid);fclose(Fid);用用fscanffscanffscanffscanf读取读取ASCIIASCIIASCIIASCII数据文件:数据文件:A,COUNT=fscanf(Fid,format,size)A,COUNT=fscanf(Fid,format,size)A,COUNT=fscanf(Fid,format,size)A,COUNT=fscanf(Fid,format,size)formatformatformatformat用以控制读取的数据格式,由加上格式符组用以控制读取的数据格式,由加上格式符组成,常见的格式符有:成,常见的格式符有:d,i,o,u,x,e,f,s,cd,i,o,u,x,e,f,s,cd,i,o,u,x,e,f,s,cd,i,o,u,x,e,f,s,c。例:例:fscanf(Fid,fscanf(Fid,fscanf(Fid,fscanf(Fid,%s%s%s%s ););););fscant(Fid,fscant(Fid,fscant(Fid,fscant(Fid,%6.2f%6.2f%6.2f%6.2f ););););fscanf(Fid,fscanf(Fid,fscanf(Fid,fscanf(Fid,“%5d%5d%5d%5d ););););MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 用用fprintfprintfprintfprint写写ASCIIASCIIASCIIASCII文本数据到文件或屏幕上:文本数据到文件或屏幕上:COUNT=fprintf(Fid,format,A,COUNT=fprintf(Fid,format,A,COUNT=fprintf(Fid,format,A,COUNT=fprintf(Fid,format,A,)例:例:x=0:0.1:1;x=0:0.1:1;x=0:0.1:1;x=0:0.1:1;y=exp(x)y=exp(x)y=exp(x)y=exp(x)Fid=fopen(exp.txt,w)Fid=fopen(exp.txt,w)Fid=fopen(exp.txt,w)Fid=fopen(exp.txt,w)fprintf(Fid,%6.2f,%12.8fn,x,y)fprintf(Fid,%6.2f,%12.8fn,x,y)fprintf(Fid,%6.2f,%12.8fn,x,y)fprintf(Fid,%6.2f,%12.8fn,x,y)fclose(Fid);fclose(Fid);fclose(Fid);fclose(Fid);MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 c)c)c)c)从磁盘中直接读写内存变量从磁盘中直接读写内存变量 load load load load将数据文件中的数据直接为将数据文件中的数据直接为workspaceworkspaceworkspaceworkspace中变量中变量 load filename load filename load filename load filename asciiasciiasciiascii load filename load filename load filename load filename save save save save将将workspaceworkspaceworkspaceworkspace中变量直接写到数据文件中中变量直接写到数据文件中 save filename A,save filename A,save filename A,save filename A,-ascii -ascii -ascii -ascii save filename A,save filename A,save filename A,save filename A,MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 MMMM文件编程文件编程a)a)a)a)命令式文件命令式文件 如果要输入较多的命令,而且要经常对这些命令重如果要输入较多的命令,而且要经常对这些命令重复输入,利用命令文件将显得比较简单方便。复输入,利用命令文件将显得比较简单方便。建立命令文件的方法根简单,就是将要输入的所有指建立命令文件的方法根简单,就是将要输入的所有指令按顺序放到一个扩展名为令按顺序放到一个扩展名为“.mmmm”的文本文件中,每次的文本文件中,每次运行时只要输入运行时只要输入MMMM文件的文件名即可。文件的文件名即可。在命令文件运行过程中产生的所有变量均是全局变量在命令文件运行过程中产生的所有变量均是全局变量。Demos Programming Function FunctionsDemos Programming Function FunctionsDemos Programming Function FunctionsDemos Programming Function Functions MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 例:编一个画宝石项链例:编一个画宝石项链的程序的程序echo onecho onecho onecho ont=(0:0.02:2)t=(0:0.02:2)t=(0:0.02:2)t=(0:0.02:2)*pi;pi;pi;pi;x=sin(t);x=sin(t);x=sin(t);x=sin(t);y=cos(t);y=cos(t);y=cos(t);y=cos(t);z=cos(2z=cos(2z=cos(2z=cos(2*t);t);t);t);plot3(x,y,z,b-plot3(x,y,z,b-plot3(x,y,z,b-plot3(x,y,z,b-,x,y,z,bd),x,y,z,bd),x,y,z,bd),x,y,z,bd)view(-80,60)view(-80,60)view(-80,60)view(-80,60)box onbox onbox onbox onlegend(legend(legend(legend(链子链子 ,宝石宝石 ););););存入文件存入文件necklace.mnecklace.mnecklace.mnecklace.m MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 b)b)b)b)函数式文件函数式文件函数文件和命令文件的区别在于:命令文件的变量在文函数文件和命令文件的区别在于:命令文件的变量在文件执行完程序后仍然保留在内存中,而函数文件内定件执行完程序后仍然保留在内存中,而函数文件内定义的变量为义的变量为内部变量内部变量,仅在函数文件内部起作用。,仅在函数文件内部起作用。函数函数MMMM文件通常由以下五部分组成:文件通常由以下五部分组成:函数定义行函数定义行;函数帮助行;函数帮助行;在线函数帮助文件在线函数帮助文件;注释注释;函数体函数体。MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 例:计算第例:计算第n n n n个个FibonnaciFibonnaciFibonnaciFibonnaci斐波纳契数斐波纳契数(一种整一种整数数列数数列,其中每数等于前面两数之和其中每数等于前面两数之和)functionfunctionfunctionfunction f=f=f=f=fibfun(fibfun(fibfun(fibfun(n)n)n)n)函数定义行函数定义行 n n n n函数输入;函数输入;f f f f函数输出;函数输出;fibfunfibfunfibfunfibfun函数名。函数名。%FIBFUN For calculating Fibonacci numbers.FIBFUN For calculating Fibonacci numbers.FIBFUN For calculating Fibonacci numbers.FIBFUN For calculating Fibonacci numbers.函数帮助行函数帮助行%Incidengtally,the name fibonacci comes fromIncidengtally,the name fibonacci comes fromIncidengtally,the name fibonacci comes fromIncidengtally,the name fibonacci comes from%Filius Bonassi,or%Filius Bonassi,or%Filius Bonassi,or%Filius Bonassi,or“son of Bonassusson of Bonassusson of Bonassusson of Bonassus”在线函数帮助文件在线函数帮助文件%fibfun.mfibfun.mfibfun.mfibfun.mif n2if n2if n2if n2 f=fibfun(n-1)+fibfun(n-2);f=fibfun(n-1)+fibfun(n-2);f=fibfun(n-1)+fibfun(n-2);f=fibfun(n-1)+fibfun(n-2);函数体函数体 elseelseelseelse f=1;f=1;f=1;f=1;end end end end注意注意:文件名必须与函数名相同:文件名必须与函数名相同执行:执行:fibfun(17),help fibfun,lookfor fibfunfibfun(17),help fibfun,lookfor fibfunfibfun(17),help fibfun,lookfor fibfunfibfun(17),help fibfun,lookfor fibfun MatlabMatlabMatlabMatlab数据文件的操作数据文件的操作数据文件的操作数据文件的操作 7 7 7 7、MMMM文件调试文件调试 语法错误语法错误和和运行错误运行错误对于对于语法错误语法错误,MatlabMatlabMatlabMatlab通常能在编译和运行时立即发现,通常能在编译和运行时立即发现,给出相应的错误原因以及所在的行号,并终止其运行。给出相应的错误原因以及所在的行号,并终止其运行。对于对于运行错误运行错误,MatlabMatlabMatlabMatlab提供了提供了MMMM文件的调试文件的调试(Debug)Debug)Debug)Debug)工具。工具。对于对于命令文件命令文件,可以直接在文件编辑器中设置断点,用调,可以直接在文件编辑器中设置断点,用调试工具(菜单或工具栏)分步执行,并在工作空间中检查每试工具(菜单或工具栏)分步执行,并在工作空间中检查每个变量的值。(以个变量的值。(以necklace.mnecklace.mnecklace.mnecklace.m为例)为例)对于对于函数文件函数文件,可以先在文件编辑器中设置断点,再到命,可以先在文件编辑器中设置断点,再到命令行状态执行函数,然后再回到文件编辑器中进行观察和调令行状态执行函数,然后再回

    注意事项

    本文(第二章-Matlab编程基础.pdf)为本站会员(qwe****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开