版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Matlab 程序设计教程主讲:小李第三章 Matlab的选择结构在进行本章选择结构的讲解前,我们先给大家讲解顺序结构及编程所遵循的一般规律。顺序结构:按照编写顺序依次执行选择结构:根据判断结果决定执行程序的哪部分循环结构:根据判断结构决定某部分代码的反复执行编程的一般步骤:1.清晰的陈述你所解决的问题2.明确程序的输入与输出及所需的变量3.设计解决问题所需的算法4.将算法转换为Matlab代码5.测试所写的程序程序的Bug3.2 关系运算逻辑值:0,1关系运算符:,=,=Round off:sin(pi)=0?abs(a-b)1.0e-143 4 3 4 4 = 4A B3.3 逻辑运算逻辑
2、运算:逻辑值(非零值与零值)+逻辑运算符(布尔运算)逻辑运算符:&,|,xor真值表:3.3 逻辑运算标量,数组,矩阵的逻辑运算运算优先级:算术运算,关系运算,非,与,或value1 = 1,value2 = 0,value3 = -10(a) value1;(b) value1 | value2 ;(c) value1 & value2 (d) value1 & value2 | value3 (e) value1 & (value2 | value3) (f) (value1 & value3) (g)value2|value3&value13.4 逻辑函数与短路运算逻辑值与数值混合运算1
3、+67+8;1+(67)+8|,&与|,&的区别及短路运算(4+9)|(6+5);(4+9)|(6+5)(4-4)&(7+8);(4-4)&(7+8)ischar(x),isempty(x),isinf(x),isnan(x),isnumeric(x)3.5 if 语句Matlab的选择结构包含三种形式:if,switch,try/catchif exp1block1elseif exp2block2elseif expnblocknelseblockn+1end 3.5 if 语句if (b2 - 4*a*c) 0 if y 95.0 disp(The grade is A.);elseif
4、 grade 86.0 disp(The grade is B.);elseif grade 76.0 disp(The grade is C.);elseif grade 66.0 disp(The grade is D.);else disp(The grade is F.);endif grade 95.0 disp(The grade is A.);else if grade 86.0 disp(The grade is B.); else if grade 76.0 disp(The grade is C.); else if grade 66.0 disp(The grade is
5、 D.); else disp(The grade is F.); end end endend3.8 switch 结构 switch 结构是另一种形式的选择结构。我们可以根据一个整形数,字符或逻辑表达式的值来选择执行特定的代码语句块。switch (switch_expr)case case_expr_1Block 1case case_expr_2Block2case case_expr_3Block3.otherwiseBlocknendswitch (switch_expr)case case_expr_1, case_expr_2, case_expr_3Block1casecas
6、e_expr_4,case_expr_5Block2.otherwiseBlocknend3.8 switch 结构switch (value)case 1, 3, 5, 7, 9,disp(The value is odd.);case 2, 4, 6, 8, 10,disp(The value is even.);otherwise,disp(The value is out of range.);end3.9 try/catch结构try/catch结构是选择结构的一种特殊结构,用于捕捉错误。当程序运行时遇到错误,程序会中止执行,但如果将可能出错的结构放在try语句中,那么程序会执行ca
7、tch语句而不会中断程序的执行。try语句块catch语句块end3.9 try/catch结构tryindex = input(请输入要显示的元素的下标: );disp(a( int2str(index) ) = num2str(a(index) );catchdisp( Illegal subscript: int2str(index) );end3.10 多个图像窗口与子窗口 Matlab的图像数,从1开始排列的正整数当前窗口:当前所有的操作都针对当前窗口figure(n)设置当前窗口,不存在则创建subplot(m,n,p)3.11 图像的增强控制plot(X1,Y1,LineSpec
8、,.,Xn,Yn,LineSpec)plot(X1,Y1,LineSpec,PropertyName,PropertyValue)LineWidth 用来指定线的宽度MarkerEdgeColor 用来指定标识表面的颜色MarkerFaceColor填充标识的颜色MarkerSize 指定标识的大小例如:下面的命令将画出一个图象,轨迹的宽度为,颜色为黑色,圆圈标识的宽度为6,每个标识为红色边缘和绿色内核3.12 文本的高级控制字符的高级控制包括:黑体,斜体来格式化,也包括特殊的希腊或数学符号。文本的字体通可以通过stream modifiers 修改。一个stream modifier 是一个
9、特殊的字符序列,bf 黑体it 斜体rm 恢复正常字体fontname 字体的名字fontsize 字体的大小_xxx xxx 做为某字符的下标xxx xxx 做为某字符的上标3.12 文本的高级控制一旦一个stream modifier 插入一个文本字符串中,它持续发挥作用,直到这直到这个字符串的结束或消失。如果一个modifier 后在跟着一个,只有中的文本起作用。tau_ind versus omega_itmtheta varies from 0circ to 90circbfB_itS3.13 极坐标图polar(theta,r),其中theta用弧度单位r()= a()水平方向:
10、r=a(1-cos) 或 r=a(1+cos) (a0)垂直方向: r=a(1-sin) 或 r=a(1+sin) (a0)直角坐标方程心形线的平面直角坐标系方程表达式分别为 x2+y2+a*x=a*sqrt(x2+y2) 和 x2+y2-a*x=a*sqrt(x2+y2)参数方程x=a*(2*cos(t)-cos(2*t)y=a*(2*sin(t)-sin(2*t)Gain=2g(1+cos)第四章 Matlab的循环结构循环结构(loop)能够反复执行一段代码,Matlab中有while和for 两种循环,while适合执行循环次数不确定的循环,for 循环适合执行循环次数确定的循环。wh
11、ile expressioncode blockend4.1 while循环结构4.2 while循环举例从键盘输入一系列数,直到输入负数为止,计算之前所有数据的平均数和标准差4.3 for循环for index=exprcode blockendindex是循环指数,它读取数组expr的列数,expr有多少列,循环就执行多少次,expr最常见的就是冒号表达式for ii = 2 5 9Statement 1.Statement nendfor ii = 1:2:10Statement 1.Statement nendfor ii = 2 5 9;1 6 10Statement 1.State
12、ment nend4.3 for 循环n的factorial,n!=n*(n-1)*(n-2)*.2*1上节课的安全漏洞4.4 for循环举例4.5 break和continuefor ii = 1:5; if ii = 3; break; end fprintf(ii = %d n, ii);enddisp(End of loop!);for ii = 1:5; if ii = 3; continue; end fprintf(ii = %d n, ii);enddisp(End of loop!);4.6 循环的嵌套for ii = 1:3for jj = 1:3if jj =3;brea
13、k;endproduct = ii * jj;fprintf(%d * %d = %d n,ii,jj,product);endfprintf(End of inner loopn);endfprintf(End of outer loopn);数组的扩展arr = 1:4;定义了一个数组1 2 3 4arr(8) = 6;第一步,创建一个新数组。第二步,把旧数组的元素复制到新数组当中。第三步,把扩展的元素写入新数组。第四步,删除旧数组。对于大数组来说这些步骤是相当耗时的。4.7 编译语言与解释语言Matlab典型的解释型语言C、C+编译型语言4.8 逻辑数组与向量化逻辑数组的生成:关系运算、逻辑运算、logic函数逻辑数组的屏蔽作用(mask)向量化思维向量化+逻辑数组代替循环
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026新课标人教版二年级下册数学第三单元测试卷(二)
- 学校美术教室规则细则
- 眼科基础试题及答案
- 2025-2026学年黑龙江哈三中高一下学期3月月考英语试题含答案
- 手工折纸创意题目及分析
- 义务教育版(2024)新课标信息技术七年级上册期末测试试卷
- 工厂转让经营协议书
- 工程代签免责协议书
- 工艺品居间合同范本
- 巴萨降薪协议书
- 2026年深圳市盐田区初三二模语文试卷(含答案)
- 2026年甘肃八年级地生会考真题试卷+答案
- 核心素养导向下的小学五年级英语Unit 3 What would you like 大单元教学设计与实施教案
- 英语河北保定市2026届高三年级第一次模拟考试(保定一模)(4.7-4.9)
- 20kV及以下配电网工程预算定额(2022版)全5册excel版
- 2022年温州保安员考试官方指定模拟试题及答案全解
- 骨科护理饮食与营养康复
- 派出所内部卫生制度
- 国企员工行为规范管理制度
- 中学语文课本剧《杜甫诗话》剧本
- 教师论文写作培训课件
评论
0/150
提交评论