数学软件Matlab 编程基础(脚本)
1 数学软件 Matlab —— 编程基础(脚本)
本讲主要内容 ■M文件 ■ 基本运算:算术、关系、逻辑 ■简单的输入输出 ■控制结构:顺序、选择、循环 2
2 本讲主要内容 M 文件 基本运算:算术、关系、逻辑 简单的输入输出 控制结构:顺序、选择、循环
Matlab编程入门 口Matlab编程简介 ●Matlab作为一种广泛应用于科学计算的工具软件,不仅 具有强大的数值计算能力和丰富的绘图功能,同时也可以 与C、FORTRAN等高级语言一样进行程序设计 ●利用Matlab的程序控制功能,将相关Matlab命令编成 程序存储在一个文件中(M文件),然后在命令窗口中运 行该文件,Matlab就会自动依次执行文件中的命令,直到 全部命令执行完毕 ●在Matlab程序设计中,要充分利用Matlab数据结构的 特点,提高编程效率 3
3 Matlab 编程入门 Matlab 作为一种广泛应用于科学计算的工具软件,不仅 具有强大的数值计算能力和丰富的绘图功能,同时也可以 与 C、FORTRAN 等高级语言一样进行程序设计 利用 Matlab 的程序控制功能,将相关 Matlab 命令编成 程序存储在一个文件中(M 文件),然后在命令窗口中运 行该文件,Matlab 就会自动依次执行文件中的命令,直到 全部命令执行完毕 在 Matlab 程序设计中,要充分利用 Matlab 数据结构的 特点,提高编程效率 Matlab 编程简介
M文件 ▣M文件介绍 ●用Matlab语言编写的程序称为M文件 ●M文件以.m为扩展名 ●M文件是由若干Matlab命令组合在一起构成的,它可 以完成某些操作,也可以实现某种算法 口两类重要的M文件(调用方式不同) ●Script:脚本文件/命令文件 ●Function:函数文件 可以直接运行的M文件
4 用 Matlab 语言编写的程序称为 M 文件 M 文件以 .m 为扩展名 M 文件是由若干 Matlab 命令组合在一起构成的,它可 以完成某些操作,也可以实现某种算法 两类重要的 M 文件(调用方式不同) Script:脚本文件/命令文件 Function:函数文件 M 文件 M 文件介绍 可以直接运行的 M 文件
M文件 ▣M文件的创建的与编辑 M文件是文本文件,可以用任何文本编辑器来建立和编辑, 通常使用Matlab自带的M文件编辑器 ●新建一个M文件 ●菜单操作(File→New→M-File) ●命令操作(edit M文件名) IATLAB ●命令按钮(快捷键) File Edit Debug ●打开已有的M文件 ●菜单操作(File→Open) ●命令操作(edit M文件名) ●命令按钮(快捷键) ●双击M文件 5
5 M 文件的创建的与编辑 M 文件是文本文件,可以用任何文本编辑器来建立和编辑, 通常使用 Matlab 自带的 M 文件编辑器 M 文件 新建一个 M 文件 菜单操作 ( File New M-File ) 命令操作 ( edit M 文件名 ) 命令按钮 ( 快捷键 ) 打开已有的 M 文件 菜单操作 ( File Open ) 命令操作 ( edit M 文件名 ) 命令按钮 ( 快捷键 ) 双击 M 文件
编程示例 例:用mesh绘制半径为3的球 ●命令行方式: ●编程方式:新建一个M文 件myprg1.m,内容如下: >> u=[0:pi/60:2*pi]; >>v=[0:pi/6a:pi]; u=[0:pi/60:2*pi]; >[U,V]=meshgrid(u,v); v=[a:pi/60:pi]; >>R=3; [U,V]=meshgrid(u,v); >X=R*sin(V).*cos(U); R=3; X=R*sin(V).*cos(U); >> Y=R*sin(V).*sin(U); Y=R*sin(V).*sin(U); >> Z=R*cos(V); mesh(X,Y,Z)j Z=R*cos(V); >> >> axis equal; mesh(X,Y,Z); axis equal; 文件的命名规则与变量相同! 在命令窗口输入myprg1, 即可执行该M文件
6 编程示例 u=[0:pi/60:2*pi]; v=[0:pi/60:pi]; [U,V]=meshgrid(u,v); R=3; X=R*sin(V).*cos(U); Y=R*sin(V).*sin(U); Z=R*cos(V); mesh(X,Y,Z); axis equal; 编程方式:新建一个 M 文 件 myprg1.m,内容如下: 例:用 mesh 绘制半径为 3 的球 命令行方式: >> u=[0:pi/60:2*pi]; >> v=[0:pi/60:pi]; >> [U,V]=meshgrid(u,v); >> R=3; >> X=R*sin(V).*cos(U); >> Y=R*sin(V).*sin(U); >> Z=R*cos(V); >> mesh(X,Y,Z); >> axis equal; 在命令窗口输入 myprg1, 即可执行该 M 文件 文件的命名规则与变量相同!
本讲主要内容 ■M文件 ■基本运算:算术、关系、逻辑 ■简单的输入输出 ■控制结构:顺序、选择、循环 7
7 本讲主要内容 M 文件 基本运算:算术、关系、逻辑 简单的输入输出 控制结构:顺序、选择、循环
关系运算 口关系运算符 小于 = 小于等于 > 大于 >= 大于等于 =日 等于 NE 不等于 ●比较大小,如果结论是真则返回1,否则返回0 ●注意==与=的区别 ●关系操作符可以比较两个同样大小的数组,或用来比较 一个数组和一个标量,在后一种情况,标量和数组中的每 一个元素相比较,比较结果与数组大小一样 8
8 关系运算 大于 >= 大于等于 == 等于 ~= 不等于 比较大小,如果结论是 真 则返回 1 ,否则返回 0 注意 == 与 = 的区别 关系操作符可以比较两个同样大小的数组,或用来比较 一个数组和一个标量,在后一种情况,标量和数组中的每 一个元素相比较,比较结果与数组大小一样 关系运算符
关系运算举例 例: >2+2==4 > 2>3 >> A=[135;206]; >>B=[310;246]; >>A>=B >> x=[50;42]; >>X<4 9
9 例: 关系运算举例 >> 2+2==4 >> 2>3 >> A=[1 3 5; 2 0 6]; >> B=[3 1 0; 2 4 6]; >> A>=B >> x=[5 0; 4 2]; >> x<4
逻辑运算 口逻辑运算符 & 与(Elementwise AND) 或(Elementwise OR) 非 xor(x,y) 异或 A&B 等价于 and(A,B) AB 等价于or(A,B) ~A 等价于not(A) && 与(Short--circuit AND) 或(Short--circuit OR) 10
10 & 与 (Elementwise AND) | 或 (Elementwise OR) ~ 非 xor(x,y) 异或 逻辑运算 逻辑运算符 && 与 (Short-circuit AND) || 或 (Short-circuit OR) A & B 等价于 and(A,B) A | B 等价于 or(A,B) ~ A 等价于 not(A)