3MATLAB编程.ppt

上传人:qwe****56 文档编号:70013588 上传时间:2023-01-14 格式:PPT 页数:22 大小:237.50KB
返回 下载 相关 举报
3MATLAB编程.ppt_第1页
第1页 / 共22页
3MATLAB编程.ppt_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《3MATLAB编程.ppt》由会员分享,可在线阅读,更多相关《3MATLAB编程.ppt(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、MATLAB编程数学与信息科学系 汪远征汪远征汪远征3.1 3.1 关系与逻辑运算关系与逻辑运算关系与逻辑运算关系与逻辑运算n n3.1.1 关系操作符关系操作符由关系运算符构成的表达式称为关系表达式由关系运算符构成的表达式称为关系表达式由关系运算符构成的表达式称为关系表达式由关系运算符构成的表达式称为关系表达式.关系操作符关系操作符说明说明小于小于大于大于=大于或等于大于或等于=等于等于=不等于不等于汪远征汪远征3.1 3.1 关系与逻辑运算关系与逻辑运算关系与逻辑运算关系与逻辑运算n n3.1.2 逻辑运算符逻辑运算符由逻辑运算符构成的表达式称为逻辑表达式由逻辑运算符构成的表达式称为逻辑表

2、达式由逻辑运算符构成的表达式称为逻辑表达式由逻辑运算符构成的表达式称为逻辑表达式.逻辑操作符逻辑操作符说明说明与与或或非非汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制顺序结构:从上到下依次执行各语句,该结构最简单。顺序结构:从上到下依次执行各语句,该结构最简单。顺序结构:从上到下依次执行各语句,该结构最简单。顺序结构:从上到下依次执行各语句,该结构最简单。分支结构:分为分支结构:分为分支结构:分为分支结构:分为if if语句和语句和语句和语句和switchswitch语句语句语句语句循环结构:分为循环结构:分为循环结构:分为循环结构:分为forfor语句和语句和

3、语句和语句和whilewhile语句语句语句语句这这这这些些些些结结结结构构构构通通通通常常常常包包包包含含含含大大大大量量量量的的的的MATLAB MATLAB 命命命命令令令令,故故故故常常常常出出出出现现现现在在在在MATLAB MATLAB 程序中,而不是直接应用在程序中,而不是直接应用在程序中,而不是直接应用在程序中,而不是直接应用在MATLAB MATLAB 提示符下提示符下提示符下提示符下.汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制3.2.1 3.2.1 分支结构:分支结构:分支结构:分支结构:if if 语句语句语句语句 3.2.2 3.2.2

4、 分支结构:分支结构:分支结构:分支结构:switch switch 语句语句语句语句 3.2.3 3.2.3 循环结构:循环结构:循环结构:循环结构:for for 语句语句语句语句 3.2.4 3.2.4 循环结构:循环结构:循环结构:循环结构:While While 语句语句语句语句 汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n3.2.1 分支结构分支结构1:if-else-end语句语句uu1.1.单分支选择结构单分支选择结构单分支选择结构单分支选择结构 单分支结构的一般形式是:单分支结构的一般形式是:单分支结构的一般形式是:单分支结构的一般形式是

5、:if if 1elseelse 2endend说说说说明明明明:如如如如果果果果条条条条件件件件表表表表达达达达式式式式为为为为真真真真,就就就就执执执执行行行行命命命命令令令令序序序序列列列列1 1,否否否否则则则则执执执执行命令序列行命令序列行命令序列行命令序列2.2.汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n3.2.1 分支结构分支结构1:if-else-end语句语句uu1.1.单分支选择结构单分支选择结构单分支选择结构单分支选择结构 例例例例3-1 3-1 设设设设 求求求求f f(2)(2),f f(-1)(-1)方法一:定义方法一:定义方

6、法一:定义方法一:定义MM文件文件文件文件li1li1,直接运行,直接运行,直接运行,直接运行li1li1:x=x=input(xinput(x=)=)if x 1if x 1 y=x2+1y=x2+1elseelse y=2*x y=2*xendend汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n3.2.1 分支结构分支结构1:if-else-end语句语句uu1.1.单分支选择结构单分支选择结构单分支选择结构单分支选择结构 例例例例3-1 3-1 设设设设 求求求求f f(2)(2),f f(-1)(-1)方方方方法法法法二二二二:建建建建立立立立函函函

7、函数数数数文文文文件件件件fun1.mfun1.m,再再再再在在在在MatlabMatlab命命命命令令令令窗窗窗窗口口口口输输输输入入入入fun1(2)fun1(2),fun1(-1)fun1(-1)即可。即可。即可。即可。function y=fun1(x)function y=fun1(x)if x1if x1 y=x2+1 y=x2+1elseelse y=2*x y=2*xendend汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n3.2.1 分支结构分支结构1:if-else-end语句语句uu2.2.多分支选择结构多分支选择结构多分支选择结构多分

8、支选择结构多多多多分分分分支支支支结结结结构构构构可可可可以以以以使使使使用用用用单单单单分分分分支支支支结结结结构构构构的的的的嵌嵌嵌嵌套套套套形形形形式式式式,也也也也可可可可以以以以使使使使用用用用下述格式:下述格式:下述格式:下述格式:if (if (),),1elseifelseif (),),2elseifelseif (),),3elseifelseif else,else,endend汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n3.2.1 分支结构分支结构1:if-else-end语句语句uu2.2.多分支选择结构多分支选择结构多分支选择结

9、构多分支选择结构例例例例3-2 3-2 设设设设求求求求f f(2)(2),f f(0.5)(0.5),f f(-1)(-1)方法一:定义方法一:定义方法一:定义方法一:定义MM文件文件文件文件li2li2,直接运行,直接运行,直接运行,直接运行li2li2:汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n3.2.1 分支结构分支结构1:if-else-end语句语句uu2.2.多分支选择结构多分支选择结构多分支选择结构多分支选择结构例例例例3-2 3-2 设设设设求求求求f f(2)(2),f f(0.5)(0.5),f f(-1)(-1)方法二:建立方法二

10、:建立方法二:建立方法二:建立MM文件文件文件文件fun2.mfun2.m,再在再在再在再在MatlabMatlab命令窗口输入命令窗口输入命令窗口输入命令窗口输入fun2(2)fun2(2),fun2(0.5)fun2(0.5),fun2(-1)fun2(-1)汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.2 分支结构分支结构2:switch语句语句switch switch 语语语语句句句句可可可可以以以以根根根根据据据据一一一一个个个个变变变变量量量量或或或或表表表表达达达达式式式式的的的的值值值值执执执执行行行行特特特特定定定定的的的的语语语

11、语句,其格式如下:句,其格式如下:句,其格式如下:句,其格式如下:switch (switch ()case case 1,1 case case 2,2 otherwise otherwise,endend汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.2 分支结构分支结构2:switch语句语句例例例例3-3 3-3 编编编编一一一一个个个个转转转转换换换换成成成成绩绩绩绩等等等等级级级级的的的的函函函函数数数数文文文文件件件件,其其其其中中中中转转转转换换换换标标标标准准准准为为为为:分分分分数数数数在在在在9090,100100中中中中,显显显

12、显示示示示优优优优秀秀秀秀;分分分分数数数数在在在在8080,90)90)中中中中,显显显显示示示示良良良良好好好好;分分分分数数数数在在在在6060,80)80)中中中中,显显显显示示示示及及及及格格格格;分分分分数数数数在在在在00,60)60)中,显示不及格。中,显示不及格。中,显示不及格。中,显示不及格。建立建立建立建立MM文件文件文件文件fun3.mfun3.m:汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.3 循环结构循环结构1:for语句语句for for 循循循循环环环环结结结结构构构构允允允允许许许许一一一一组组组组命命命命令令令令

13、以以以以固固固固定定定定的的的的和和和和预预预预定定定定的的的的次次次次数数数数重重重重复复复复,其一般格式为:其一般格式为:其一般格式为:其一般格式为:for x=for x=:endend其中其中其中其中x x称为循环变量,如果省略步长,则步长默认为称为循环变量,如果省略步长,则步长默认为称为循环变量,如果省略步长,则步长默认为称为循环变量,如果省略步长,则步长默认为1.1.汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.3 循环结构循环结构1:for语句语句例例例例3-43-4:计算:计算:计算:计算1 1到到到到100100的和的和的和的和.a

14、=0;a=0;for i=1:100for i=1:100 a=a+i;a=a+i;endenda a汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.3 循环结构循环结构1:for语句语句循环变量也可以是一个向量循环变量也可以是一个向量循环变量也可以是一个向量循环变量也可以是一个向量例例例例3-5 3-5 对对对对x x=1 1,4 4,5 5,7 7,9 9,8 8,1010,求求求求Sin(xSin(x)Cos(xCos(x)的值的值的值的值a=1,4,5,7,9,8,10;a=1,4,5,7,9,8,10;for x=afor x=a y=sin

15、(x)-cos(x)y=sin(x)-cos(x)endend上述循环也可以直接使用向量运算:上述循环也可以直接使用向量运算:上述循环也可以直接使用向量运算:上述循环也可以直接使用向量运算:a=1,4,5,7,9,8,10;a=1,4,5,7,9,8,10;y=sin(a)-cos(a)y=sin(a)-cos(a)汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.3 循环结构循环结构1:for语句语句例例例例3-6 3-6 编编编编程程程程生生生生成成成成一一一一个个个个6 6阶阶阶阶矩矩矩矩阵阵阵阵,使使使使其其其其主主主主对对对对角角角角线线线线上

16、上上上元元元元素素素素均均均均为为为为1 1,与主对角线相邻元素均为,与主对角线相邻元素均为,与主对角线相邻元素均为,与主对角线相邻元素均为2 2,其余元素为,其余元素为,其余元素为,其余元素为0 0。A=eye(6);A=eye(6);for k=1:5for k=1:5 A(k,k+1)=2;A(k,k+1)=2;A(k+1,k)=2;A(k+1,k)=2;endend考虑:考虑:考虑:考虑:diag(2 2 2 2 2 2)+diag(1 1 1 1 1,1)+diag(1 1 1 1 1,-1)diag(2 2 2 2 2 2)+diag(1 1 1 1 1,1)+diag(1 1 1

17、 1 1,-1)汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.3 循环结构循环结构1:for语句语句例例例例3-7 3-7 有有有有一一一一个个个个4 4 5 5 矩矩矩矩阵阵阵阵,编编编编程程程程求求求求出出出出其其其其最最最最大大大大值值值值及及及及其其其其所所所所处处处处的的的的位置位置位置位置.a=rand(4,5)a=rand(4,5)b=0;c=0 0;b=0;c=0 0;for i=1:4for i=1:4 for j=1:5 for j=1:5 if b if ba(ia(i,j),b=,j),b=a(ia(i,j);c=i j;en

18、d,j);c=i j;end end endendendb,cb,c汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.4 循环结构循环结构2:While语句语句与与与与for for 循循循循环环环环以以以以固固固固定定定定次次次次数数数数求求求求一一一一组组组组命命命命令令令令相相相相反反反反,while while 循循循循环环环环根根根根据据据据条条条条件件件件表表表表达达达达式式式式的的的的值值值值来来来来确确确确定定定定程程程程序序序序的的的的运运运运行行行行方方方方式式式式,一一一一般般般般用用用用以以以以事事事事先先先先不不不不知知知知道循

19、环次数的情况道循环次数的情况道循环次数的情况道循环次数的情况.while (while ()endend只只只只要要要要条条条条件件件件表表表表达达达达式式式式为为为为真真真真,就就就就执执执执行行行行while while 和和和和end end 语语语语句句句句之之之之间间间间的的的的循循循循环体环体环体环体.汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.4 循环结构循环结构2:While语句语句例例例例3-8 3-8 设设设设银银银银行行行行年年年年利利利利率率率率为为为为11.25%11.25%,将将将将1000010000元元元元钱钱钱钱存

20、存存存入入入入银银银银行行行行,问多长时间会连本带利翻一番?问多长时间会连本带利翻一番?问多长时间会连本带利翻一番?问多长时间会连本带利翻一番?money=10000money=10000years=0years=0while money 20000while money 20000 years=years=yearsyears+1+1 money=money=moneymoney*(1+11.25/100)*(1+11.25/100)endend汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.4 循环结构循环结构2:While语句语句例例例例3-9

21、Fibonacci3-9 Fibonacci数列的元素满足:数列的元素满足:数列的元素满足:数列的元素满足:F Fk k+2+2=F Fk k+F Fk k+1+1,(k k=1,2,.)=1,2,.),且,且,且,且F F1 1=F F2 2=1=1求该数列中第一个大于求该数列中第一个大于求该数列中第一个大于求该数列中第一个大于1000010000的元素。的元素。的元素。的元素。a(1)=1;a(2)=1;i=2;a(1)=1;a(2)=1;i=2;while while a(ia(i)=10000)=10000 a(i+1)=a(i-1)+a(i);a(i+1)=a(i-1)+a(i);i

22、=i+1;i=i+1;endendi,ai,a汪远征汪远征3.2 3.2 程序流程控制程序流程控制程序流程控制程序流程控制n n2.2.4 循环结构循环结构2:While语句语句例例例例3-10 3-10 A A是是是是m*3m*3的的的的矩矩矩矩阵阵阵阵,是是是是mm个个个个原原原原子子子子的的的的坐坐坐坐标标标标值值值值,请请请请问问问问如如如如何何何何求得所有两两原子之间的距离求得所有两两原子之间的距离求得所有两两原子之间的距离求得所有两两原子之间的距离R?R?(R(R应该有应该有应该有应该有m*(m-1)/2m*(m-1)/2个分量个分量个分量个分量)for k=1:mfor k=1:m for h=for h=k:mk:m r(k,hr(k,h)=)=sqrt(dot(A(hsqrt(dot(A(h,:)-)-A(kA(k,:),),A(hA(h,:)-)-A(kA(k,:););endendendend

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

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

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