Matlab工程应用基础21Matlab语言程序设计.ppt_第1页
Matlab工程应用基础21Matlab语言程序设计.ppt_第2页
Matlab工程应用基础21Matlab语言程序设计.ppt_第3页
Matlab工程应用基础21Matlab语言程序设计.ppt_第4页
Matlab工程应用基础21Matlab语言程序设计.ppt_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基本要求: (1) 了解Matlab的各种数据类型; (2) 掌握Matlab的运算符与操作符的含义和用法 ; (3) 掌握Matlab基本表达式并了解其常用函数分类; (4) 熟练掌握 Matlab 的程序结构(顺序结构、循环结构和分支结构)与流程控制语句 ; (5) 了解并初步掌握 Matlab 的数据文件的读写; (6) 学会 Matlab 的M文件的编写方法,包括命令文件和函数文件。了解M件的调试命令和调试方法。,第2章 Matlab语言程序设计,1、 Matlab数据类型 变量和常量 数字变量的格式 字符串 单元型变量 结构型变量 矩阵、向量 多项式,a) 变量和常量 变量(包括函数)的命名规则:由英文字母、数字和下划线混合组成,不得包含空格和标点 ;第一个字符必须是英文字母,最多包括31个字符; 对字母的大小写敏感。 局部变量和全局变量 永久变量(常量) 只能在某一函数体内使用,而不能从其他函数和 Matlab工作空间访问的变量,就是局部变量。 在几个函数及M atlab函数中都能使用的变量就是全局变量。 (全局变量名应尽可能大写,并由globe声明),Matlab永久变量,b) 数字变量 Matlab内部的每一个数据元素都是用双精度数(double)来表示和存储的。 变量输出时用户可以用format命令设置或改变输出格式。 短格式(Short):1.3333 0.0000 短格式e方式(Short e):1.3333e+00 1.2345e-06 短格式g方式(Short g):1.3333 0.0 长格式(Long):1.33333333333333 0.00000123450000 长格式e方式(Long e):1.33333333333333e+00 1.2345000000000e-06 长格式g方式(Long g):1.33333333333333 0.0000012345 银行格式(Bank):1.33 0.00 十六进制格式(Hex):3ff555555555 3eb46231abfd71 +格式(+):+ 有理数(Rational):1/3 2469/2000000000,c) 字符串 所有字符串都用单引号括起来。 s=matlab 字符中中的每个字符(包括空格)都是字符串变量(矩阵或向量)中的一个元素。 字符串中的字符以 ASCII 码形式储存并区分大小 ,用函数abs可以看到字符的ASCII码。 在Matlab中,字符串和字符矩阵基本上是等价的。 s=matlab 等价于 s=matlab ,第2章 Matlab语言程序设计 字符串函数,第2章 Matlab语言程序设计,字符串举例: 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=中国;北京,d) 单元型变量 单元型变量是一种比较特殊的数据类型,本质上讲,单元型变量实际上是一种以任意形式的数据为元素的多维数组。,单元型变量可以存放任何类型、任何大小的数据, 其大小是不定的。 A=1,2;3,4 A = 1 2 3 4 B=1:4, A, abcd B = 1x4 double 2x2 double abcd B为单元型变量(用花括号), cellplot(B) celldisp(B),第2章 Matlab语言程序设计, D.a1=abcd; D.a2=1; D.a3=1,2,3,4; D D = a1: abcd a2: 1 a3: 1 2 3 4 D为结构型变量,e) 结构型变量 结构型变量是另一种可以将不同类型数据组合在一起的数据类型,与单元型变量的不同在于结构型变量是以指针方式来传递数据的。, C=struct(c1,1,c2,B,c3,abcd) C = 1x3 struct array with fields: c1 c2 c3 C为结构型变量,第2章 Matlab语言程序设计,f) 矩阵、向量 Matlab是以矩阵为基本运算单元的,数组作为独立的计算单元实体是不存在的,它的建立、存储完全等同于矩阵,只是计算时在符号上做了不同的约定。 向量是组成矩阵的基本元素之一。可以把行向量看成1n 阶矩阵,把列向量看成n1阶矩阵。向量的基本运算采用数组运算法则。,多项式 多项式是以向量的形式表达的。可以是列向量也可以是行向量。 p=1,2,3 poly2sym(p) ans = x2+2*x+3 m=3;4;5 poly2sym(m) ans = 3*x2+4*x+5,2、运算符与操作符,数学运算符,操作符,冒号“ :” 可以用来产生向量; 用作矩阵的下标,部分地选择矩阵元素; 进行行循环操作。 续号“ ” 表示一行未完,而在下一行继续; 分号“ ;” 在方括号中,表示矩阵中行的结尾; 用在每行的结尾,则 不显示该行运算的结果。,关于逻辑真假的规定: 在所有的关系表达式和逻辑表达式中,输入的任何非 0 数都被看作是“ 逻辑真”,而只有 0 才被认为是“ 逻辑假”; 所有关系表达式和逻辑表达式的计算结果是一个由 0 和 1 组成的“ 逻辑矩阵( Logical Array)”。矩阵中的 1 表示“ 真”,0 表示“ 假”; 逻辑矩阵是一种特殊的数值矩阵。与“ 数值类”有关的操作和函数对它也适用;但它又不同于普通的“ 数值”,它还表示对事物的判断结论“ 真”与“ 假” 。,第2章 Matlab语言程序设计,关系操作符,逻辑操作符,MATLAB 的关系操作符运算法则: 当两个变量是标量 a 和 b 时 若 a、b 之间关系成立,则关系运算结果为 1; 若 a、b 之间关系不成立,则关系运算结果为 0; 当两个维数相同的矩阵 A 和 B 比较时,矩阵 A、B 比较的是相同位置的元素,按标量的运算规则逐个进行。关系运算的结果是一个和 A维数相同的矩阵,它的元素由 0 和 1 组成。 当一个矩阵A 和一个标量 b 比较时,把标量 b 和矩阵A 的每一个元素按标量关系运算规则逐个比较。关系运算的结果是一个和数组 A维数相同的矩阵,它是由 0 和 1 组成。 优先级 由高到低为算术运算、关系运算和逻辑运算。,第2章 Matlab语言程序设计,第2章 Matlab语言程序设计, A=3,4,8;9,0,2;5,3,7 A = 3 4 8 9 0 2 5 3 7 B=4,4,1;7,8,4;5,1,7 B = 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=6) B0 = 1 1 1 0 0 1 1 1 0,关系运算举例,MATLAB 中逻辑操作符的运算法则: 如果两个标量 a 和 b 运算,则: a&b:a、b 全是非 0 时,运算结果是 1,否则是 0; a|b:a、b 中只要有一个非 0,运算结果为 1; a:当 a 是 0 时,运算结果是 1,否则是 0。 如果两个维数相同的矩阵A 和 B 参与运算,则: 将矩阵A 和 B 相同位置上的元素按标量的运算规则逐个进行运算。运算的结果是返回一个由 0 和 1 组成的与 A 具有同样维数的矩阵; 如果标量 b 和矩阵A 参与运算,则: 将标量 b 和矩阵A 中的每个元素进行逻辑运算。逻辑运算的结果是返回一个由 0和 1 组成的与 A 具有同样维数的矩阵; 逻辑“ 非”运算是一元运算符,服从数组运算规则; 在逻辑“ 与”、“ 或”、“ 非”三者中, “ 非”的优先级最高,“ 与”与“ 或”具有相同的优先级,从左向右执行。 通过 “( )”可以改变各操作符之间的优先级。,第2章 Matlab语言程序设计, A=3,4,8;9,0,2;5,3,7 A = 3 4 8 9 0 2 5 3 7 B=4,4,1;7,8,4;5,1,7 B = 4 4 1 7 8 4 5 1 7 AB=A&B AB = 1 1 1 1 0 1 1 1 1, A_B=A|B A_B = 1 1 1 1 1 1 1 1 1 C=A C = 0 0 0 0 1 0 0 0 0 cc=(A3)&(B6) cc = 0 1 1 0 0 0 1 0 0,逻辑运算举例,第2章 Matlab语言程序设计,3、表达式及函数,Matlab 采用的是表达式语言,用户输入的语句由 Matlab 系统解释运行。用户可以在 Matlab 的命令窗口中键入命令,也可以在编辑器内编写应用程序。 Matlab 语句由表达式和变量组成,有两种最常见的语句形式: 表达式 变量表达式, t=6 t = 6 sin(5*t+6) ans = -0.9918 y=sin(5*t+6) y = -0.9918,表达式由变量名、运算符、数字和函数名组成。 表达式将按常规的优先纽从左至右执行运算; 优先级的规定是指数运算级别最高,乘除运算次之; 括号可以改变运算顺序; 书写表达式时,赋值符“”和运算符两侧允许有空格,以增加可读性。但在复数或符号表达式中要尽量避免空格,以防出错; 表达式的末尾加 “;” 时,Matlab系统只把数值赋给变量, 不显示计算结果;不加“;”时, Matlab 系统将会在该条语句的下面直接显示运算结果。,第2章 Matlab语言程序设计,第2章 Matlab语言程序设计,Matlab 有十分丰富的函数资源,总共分为24类。 常用有一下几类: 一般函数命令(GENERAL); 操作符与操作(OPERATOR); 数据类型和结构(DATETYPE); 基本矩阵和矩阵操作(ELMAT); 基本数学函数(ELFUN); 二维图(PLOTXY); 图形句柄(GENGRAPH); 三维图(3DGRAPH); 语言和程序设计(LANGUAGE); 文件输入输出函数(IOFUN); 符号工具箱(SYNBOLIC)。,( 1)创建一个表达式 ,并求当 x=1,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论