MATALB程序设计入门与基础编程运算.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《MATALB程序设计入门与基础编程运算.ppt》由会员分享,可在线阅读,更多相关《MATALB程序设计入门与基础编程运算.ppt(497页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1章MATLAB基础入门,学习C#有什么收获或感想? 学习高等数学呢? 学习线性代数呢? 将来还会学习运筹学,2,教材/参考文献,3,4,MATLAB概述 MATLAB是“matrix laboratory”的缩写,意为矩阵实验室。 美国新墨西哥大学的Clever Moler教授。 ,5,MATLAB概述 MATLAB是“matrix laboratory”的缩写,意为矩阵实验室。 ,6,MATLAB概述 1984年,Jack Little和Clever Moler合伙成立了MathWorks公司,正式推出了MATLAB. 每年的3月和9月左右,MathWorks公司会推出MATLAB的a版
2、本和b版本. MATLAB具有非常强大的科学计算、图形绘制、GUI开发等功能,同时提供了丰富的各专业领域工具箱,而且,学习曲线相对较低.,7,MATLAB安装及启动 MATLAB版本选择(Matlab R2014a) MATLAB安装,8,MATLAB安装 双击安装包根目录中的安装启动文件“setup.exe”,弹出如图所示的“MathWorks 安装程序”对话框。,9,MATLAB安装 在弹出如图所示的“许可协议”对话框,点击“是(Y)”单选按钮。,10,MATLAB安装 尔后弹出如图所示的“文件安装密钥”对话框。,11,MATLAB安装 在密钥合法的情形下,会弹出如图所示的“文件夹选择”对
3、话框.,12,MATLAB安装 弹出如图所示的“产品选择”对话框。,13,MATLAB安装 弹出如图所示的“安装选项”对话框.,14,MATLAB安装 弹出如图所示的“确认”对话框,并单击“安装”按钮,15,MATLAB安装 弹出如图所示的“安装进度”对话框.,16,MATLAB安装 在安装即将结束时,会弹出如图所示的“产品配置说明”对话框.,17,MATLAB安装 弹出如图所示的“安装完毕”对话框.,18,MATLAB安装 弹出如图所示的“MathWorks软件激活”对话框.,19,MATLAB安装 弹出如图所示的“离线激活”对话框.,20,MATLAB安装 弹出如图所示的“激活完成”对话框
4、.,21,MATLAB安装及启动 MATLAB版本选择(Matlab R2014a) MATLAB安装 MATLAB启动,22,MATLAB安装及启动 MATLAB启动,23,MATLAB工作界面 主页(Home) 绘图(Plots) 应用程序(Apps) 快捷方式(Shortcuts) 编辑器(Editor)-计算机操作演示 发布(Publish) 视图(View),24,MATLAB工作界面 主页(Home),25,MATLAB工作界面 主页(Home)-预设,26,MATLAB工作界面 编辑器(Editor),27,MATLAB工作界面 MATLAB当前文件夹(Current Folde
5、r),28,MATLAB工作界面 MATLAB命令行窗口(Command Window)-重点,29,MATLAB工作界面 MATLAB工作区(Workspace),30,MATLAB工作界面 MATLAB命令历史记录窗口,31,MATLAB工作界面 MATLAB命令历史记录窗口,32,MATLAB工作界面 MATLAB命令历史记录窗口 “”表示从当前位置向前调用历史命令 “”表示从当前位置向后调用历史命令,33,MATLAB初步操作命令 命令行提示符“” version help doc % format %doc format,34,MATLAB初步操作命令 命令行提示符“” versio
6、n help doc % format ;%semicolon ans clear clear all clc diary,35,MATLAB初步操作命令 命令行提示符“” version help doc % format ;%semicolon ans clear clear all clc diary help punct help paren,36,关闭MATLAB R2014a 菜单方法 命令方法 直接方法 快捷键方法:Ctrl+Q,37,课外延伸 启动MATLAB软件,在如图所示的命令行窗口里单击“视频”、“示例”和快速入门,并学习相关视频资料、示例及快速入门文档资料。 访问,38
7、,第2章MATLAB基本运算,程序应该是写给其他人读的,让机器来运行它只是一个附带功能。 Harold Abelson and Gerald Jay Sussman,计算机科学家,40,数据类型 标识符、常量与变量 运算符和表达式 数组 矩阵,41,数据类型,42,数据类型 数值数据类型,43,数据类型 数值数据类型 实数 复数,44,数据类型 数值数据类型 实数 复数,45,数据类型 数值数据类型 实数 复数,46,数据类型 数值数据类型 实数 复数 特殊数据,47,数据类型 字符类型,48,字符(串)是括在一对单撇“”中的文本,有单个字符,如 a , A 等,也有多个字符组成的字符串 ab
8、c , ABC 等。不管怎样,它们在MATLAB中都以字符数组的形式存在。 注意:单撇一定要在英文半角状态输入。 需要输入单撇作为字符时,需要连续输入2个单撇。,数据类型 逻辑类型,49,逻辑类型主要用来表示真(true)和假(false),在MATLAB中真(true)用逻辑“1”表示,假(false)用逻辑“0”表示,而且任何非零元素对于MATLAB而言都为真(true),零元素被当作逻辑“0”。其它类型的数据可由函数logical转换,但是不能将复数和NaN(Not a Number)转换成逻辑值,遇到此类情形系统会报错。,数据类型 逻辑类型,50,标识符、常量与变量 标识符 标识符(i
9、dentifier)就是可以唯一标识某个对象(或事物)的名字。 关键字 预定义标识符 用户自定义标识符,51,标识符、常量与变量 标识符 关键字,52,标识符、常量与变量 标识符 预定义标识符,53,除了MATLAB关键字,还有很多诸如“iskeyword”、“pi”、“sum”这样的函数,他们的标识符都不能作为用户自定义的标识符。,标识符、常量与变量 标识符,54,标识符、常量与变量 标识符 用户自定义标识符 只能使用字母、数字、下划线,且必须是字母开头; 字母大小写敏感 标识符的最大长度为63个字符;(namelengthmax) 不能使用关键字; 建议不使用系统预定义标识符。,55,标识
10、符、常量与变量 常量 常量就是指在程序运行过程中,其值不能被改变的量。,56,标识符、常量与变量 变量 所谓变量就是在程序运行过程中,其值可以变化的量。 特点:MATLAB中的变量可以直接使用,可以不用事先执行声明类型及赋初值等准备工作。,57,运算符与表达式 所谓运算符就是参与运算的符号. 算术运算 关系运算 逻辑运算 ,58,运算符与表达式 所谓表达式就是用运算符或相关函数将运算对象连接起来,且符合MATLAB语法规则的式子.,59,运算符与表达式 算术运算符和算术表达式,60,运算符与表达式 赋值运算符和赋值表达式 赋值运算符为“=”,即将赋值运算符右边的表达式赋值给左边的变量。,61,
11、运算符与表达式 关系运算符和关系表达式,62,运算符与表达式 逻辑运算符和逻辑表达式,63,运算符与表达式 逻辑运算符和逻辑表达式 逻辑运算中的“逻辑异或”没有运算符号,依赖函数xor来实现。,64,运算符与表达式 运算符优先级 运算符的优先级决定了相应的表达式在MATLAB中的执行顺序 对于优先级相同的运算符,按从左至右的顺序执行,65,运算符与表达式 运算符优先级,66,运算符与表达式 运算符优先级,67,运算符与表达式 运算符优先级 MATLAB采用“从左至右”的原则计算表达式,但运算符的优先级可能改变这种顺序,68,运算符与表达式 运算符优先级 MATLAB采用“从左至右”的原则计算表
12、达式,但运算符的优先级可能改变这种顺序 为避免对于运算符优先级的认知模糊而不能获得预期结果,一般建议在程序中使用圆括号明确表达式的执行顺序。,69,数组 所谓数组是指有序数据的集合. 数组的数据集合是由方括号“ ”括起来; 数组元素之间使用“空格”或“,”分隔; 行与行之间是使用分号“;”或“Enter”分隔; 数组在MATLAB中是按“列优先”的形式存储的,即先存储第1列,再存储第2列,余此类推; 数组的规模无需预先声明,可以自动增长。,70,数组 一维数组. 一维数组可以以行向量或列向量的形式出现。 直接输入法:,71,数组 一维数组. 一维数组可以以行向量或列向量的形式出现。 直接输入法
13、:,72,数组 一维数组. 直接输入法: 冒号生成法: 冒号“:”作为运算符,可以产生数组(向量)。 from:to %初始值:终止值,步长缺省为1 from:step:to %初始值:步长:终止值,73,数组 一维数组. 冒号生成法: 例题在MATLAB命令行窗口(Command Window)中,利用冒号运算符输入一维数组A=1 2 3 4 5 6 8 9 10和B=1 3 5 7 9 11 13 15。,74,数组 一维数组. 直接输入法: 冒号生成法: 使用“linspace”和“logspace”函数生成一维数组,75,数组 linspace (generate linearly s
14、pace vector) y = linspace(a,b) %区间a,b上生成100个点构成的行数组y = linspace(a,b,n) %区间a,b上生成n个点构成的行数组 logspace (generate logarithmically space vector) y = logspace(a,b) %区间10a,10b上生成50个点构成的行数组 y = logspace(a,b,n) %区间10a,10b上生成n个点构成的行数组,76,数组 一维数组. 例题在MATLAB命令行窗口(Command Window)中,利用“linspace”生成区间1,100上100个点和1000
15、个点,利用“logspace”生成区间1,100上50个点和1000个点。,77,数组 一维数组. 直接输入法: 冒号生成法: 使用“linspace”和“logspace”函数生成一维数组 使用“,”拼接已有一维(行)数组,78,数组 一维数组. 例题在MATLAB命令行窗口(Command Window)中,已知数组A=1,2, B=3,4,利用“,”将数组A拼接成C=1 2 3 4。,79,数组 一维数组. 直接输入法: 冒号生成法: 使用“linspace”和“logspace”函数生成一维数组 使用“,”拼接已有一维(行)数组 使用“;”拼接已有一维(列)数组,80,数组 一维数组.
16、 例题在MATLAB命令行窗口 (Command Window)中,已 知数组C=1;2,D=3;4,利 用“;”将数组A拼接成: E= .,81,数组 二维数组. 直接输入法: 例题 在MATLAB命令行窗口(Command Window)中,输入二维数组A=1 2;3 4;B=5,6;7,8,观察数组的形式,并通过“;”或“,”实现数组的拼接使得,82,83,数组 高维数组 对于二维数组,人们习惯地把数组的“第1维”称为“行”,“第2维”称为“列”,则二维数组可以视作一个三维空间(X轴、Y轴、Z轴)中由X轴和Y轴构成的“矩形平面”。三维数组则是在这个平面的基础上,向Z轴扩展,增加了一维称为
17、“页”。 方法:先创建二维数组,由一个个二维数组构建“页”上的“矩形平面”数据。,84,数组 高维数组 例题 在MATLAB命令行窗口(Command Window)中,已知A=1 2;3 4,B=5 6;7 8,C=9,10;11,12,构建三维数组D,使得D(:,:,1)=A,D(:,:,2)=B,D(:,:,3)=C。,85,页编号,数组 高维数组,86,数组 字符数组 MATLAB中字符串就是以字符数组的形式存在的 例题 在MATLAB命令行窗口(Command Window)中,利用直接输入法创建字符串ch=I love MATLAB.和ch2=I dont like MATLAB.
18、。,87,数组 元胞数组 普通数组里的元素都是同类型的,而且每个元素占用的存储空间都是一样的。对于需要将不同维度或不同类型的元素一起存放到数组的需求而言,可以借助MATLAB中的元胞数组(cell array)来实现。元胞数组的元胞(cell)相当于一个存放数据的容器,每一个容器中可以存放任何类型、任何维度规模的数据(包括元胞)。,88,数组 元胞数组 直接输入法: cell函数法,89,Cell arrays in MATLAB are multidimensional arrays whose elements are copies of other arrays. A cell arra
19、y of empty matrices can be created with the cell function. But, more often, cell arrays are created by enclosing a miscellaneous collection of things in curly braces, . The curly braces are also used with subscripts to access the contents of various cells.,数组 元胞数组 例题在MATLAB命令行窗口(Command Window)中,借助花
20、括号“”直接输入2行2列的元胞数组,元胞数组中要求存放字符串、数值、二维数组及元胞。,90,数组 元胞数组 例题 在MATLAB命令行窗口(Command Window)中,借助函数“cell”创建4x4的元胞数组,要求存放物流管理1401班3个学生(张三、李四、王五)的语文、数学、外语成绩。张三的语文、数学、外语成绩分别为90、80、95;李四的语文、数学、外语成绩分别为75、95、90;王五的语文、数学、外语的成绩分别为100、95、98。,91,数组 元胞数组,92,物流管理1401班(3名)学生成绩,数组 元胞数组,93,数组 元胞数组,94,数组 结构体数组 结构体(structur
21、es)也可以用于存放不同类型和不同维度规模的数据. 与元胞数组将数据存放在元胞(容器)里不同,结构体数组是将数据存放在“字段(fields)”里,这使得结构体数组非常类似于数据库中的表(table). 结构体数组可以通过“直接输入数据”的模式进行创建,也可以使用函数“struct”创建.,95,数组 结构体数组 Structures are multidimensional MATLAB arrays with elements accessed by textual field designators. 例题在MATLAB命令行窗口(Command Window)中,通过直接输入法创建结构体
22、数组,存放上例中的学生成绩数据。 答:通过“.”表示法形式:结构体名.字段名,结构数组可以实现数据的存取。,96,数组 结构体数组,97,数组 结构体数组 例题在MATLAB命令行窗口(Command Window)中,使用函数“struct”创建结构体数组,存放上例中的学生成绩数据。 语法 s = struct(field1,value1,.,fieldN,valueN),98,数组 结构体数组,99,数组 结构体数组,100,数组 数组访问与操作 数据的保存和提取 save test.mat % 命令形式,保存所有数据 save(test.mat) % 函数形式,保存所有数据 save t
23、est.mat X % 命令形式:保存部分数据 save(test.mat,X) % 函数形式:保存部分数据 值得注意的是,如果“save”函数中的任何输入参数为变量时,必须使用函数形式保存数据。,101,数组 数组访问与操作 数据的保存和提取 load durer.mat %命令形式:提取所有数据load(durer.mat) %函数形式:提取所有数据 load durer.mat X %命令形式:提取部分数据load(durer.mat,X) %函数形式:提取部分数据 值得注意的是,如果“load”函数中的任何输入参数为变量时,必须使用函数形式保存数据。,102,数组 数组访问与操作 数据
24、的保存和提取 例题在MATLAB命令行窗口(Command Window)中,产生3阶魔方阵A,产生行向量x=1:100;然后使用save命令将所有数据保存为myData.mat,使用save命令仅将向量x保存到myData2.mat;在用“clear all”命令删除所有工作区中的数据之后,使用load命令从myData2.mat提取所有数据,并从myData.mat(文件名命名采用了camelCase,即骆驼命名法)数据文件中仅仅提取矩阵A。并自己测试输入参数“文件名”为变量时,load命令形式和函数形式调用的异同。,103,数组 数组访问与操作 数据的保存和提取,104,数组 数组访问与
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATALB 程序设计 入门 基础 编程 运算
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内