第4章MATLAB程序设计 4.1M文件 4.2程序控制结构 4.3函数文件 4.4程序调试
第4章 MATLAB程序设计 4.1 M文件 4.2 程序控制结构 4.3 函数文件 4.4 程序调试
4.1M文件 4.1.1M文件的分类 用MATLAB语言编写的程序,称为M 文件。M文件可以根据调用方式的不 同分为两类:命令文件(Script File)和 函数文件(Function File)
4.1 M文件 4.1.1 M文件的分类 用MATLAB语言编写的程序,称为M 文件。M文件可以根据调用方式的不 同分为两类:命令文件(Script File)和 函数文件(Function File)
例4.1建立一个命令文件将变量a,b的值互换,然后 运行该命令文件。 程序1: 首先建立命令文件并以文件名exch.m存盘: clear; a=1:10; b=11,12,13,14;15,16,17,181; c=a;a=b;b=c; a b 然后在MATLAB的命令窗口中输入exch,将会执行 该命令文件
例4.1 建立一个命令文件将变量a,b的值互换,然后 运行该命令文件。 程序1: 首先建立命令文件并以文件名exch.m存盘: clear; a=1:10; b=[11,12,13,14;15,16,17,18]; c=a;a=b;b=c; a b 然后在MATLAB的命令窗口中输入exch,将会执行 该命令文件
程序2: 首先建立函数文件fexch.m: function [a,b]=exch(a,b) c=a;a=b;b=c; 然后在MATLAB的命令窗口调用该函数文件: clear; x=1:10; y=[11,12,13,14;15,16,17,18] x,y =fexch(x,y)
程序2: 首先建立函数文件fexch.m: function [a,b]=exch(a,b) c=a;a=b;b=c; 然后在MATLAB的命令窗口调用该函数文件: clear; x=1:10; y=[11,12,13,14;15,16,17,18]; [x,y]=fexch(x,y)
4.1.2M文件的建立与打开 M文件是一个文本文件,它可以用任何编辑程序 来建立和编辑,而一般常用且最为方便的是使用 MATLAB提供的文本编辑器。 1.建立新的M文件 为建立新的M文件,启动MATLAB文本编辑器有 3种方法: ()菜单操作。从MATLAB主窗口的File菜单中选 择New菜单项,再选择M-file命令,屏幕上将出现 MATLAB文本编辑器窗口。 (2)命令操作。在MATLAB命令窗口输入命令edit, 启动MATLAB文本编辑器后,输入M文件的内容 并存盘。 (3)命令按钮操作。单击MATLAB主窗口工具栏 上的NewM-File命令按钮,.启动MATLAB文本编 辑器后,输入M文件的内容并存盘
4.1.2 M文件的建立与打开 M文件是一个文本文件,它可以用任何编辑程序 来建立和编辑,而一般常用且最为方便的是使用 MATLAB提供的文本编辑器。 1.建立新的M文件 为建立新的M文件,启动MATLAB文本编辑器有 3种方法: (1) 菜单操作。从MATLAB主窗口的File菜单中选 择New菜单项,再选择M-file命令,屏幕上将出现 MATLAB 文本编辑器窗口。 (2) 命令操作。在MATLAB命令窗口输入命令edit, 启动MATLAB文本编辑器后,输入M文件的内容 并存盘。 (3) 命令按钮操作。单击MATLAB主窗口工具栏 上的New M-File命令按钮,启动MATLAB文本编 辑器后,输入M文件的内容并存盘
2.打开已有的M文件 打开已有的M文件,也有3种方法: (I)菜单操作。从MATLAB主窗口的File菜 单中选择Open命令,.则屏幕出现Open对话 框,在Open对话框中选中所需打开的M文 件。在文档窗口可以对打开的M文件进行 编辑修改,编辑完成后,将M文件存盘。 命盒名皂般肄入命 3)命令按钮操作。单击MATLAB主窗口工 具栏上的Open File命令按钮,再从弹出的 对话框中选择所需打开的M文件
2.打开已有的M文件 打开已有的M文件,也有3种方法: (1) 菜单操作。从MATLAB主窗口的File菜 单中选择Open命令,则屏幕出现Open对话 框,在Open对话框中选中所需打开的M文 件。在文档窗口可以对打开的M文件进行 编辑修改,编辑完成后,将M文件存盘。 (2) 命令操作。在MATLAB命令窗口输入命 令:edit 文件名,则打开指定的M文件。 (3) 命令按钮操作。单击MATLAB主窗口工 具栏上的Open File命令按钮,再从弹出的 对话框中选择所需打开的M文件
4.2程序控制结构 4.2.1顺序结构 1.数据的输入 从键盘输入数据,,则可以使用input函数来进 行,该函数的调用格式为: A=input(提示信息,选项); 其中提示信息为一个字符串,用于提示用户 输入什公样的数据。 如果在input函数调用时采用's'选项,则允 许用户输入一个字符串。例如,想输入一 个人的姓名,可采角命令: xm=input('What"'s your name?','s');
4.2 程序控制结构 4.2.1 顺序结构 1.数据的输入 从键盘输入数据,则可以使用input函数来进 行,该函数的调用格式为: A=input(提示信息,选项); 其中提示信息为一个字符串,用于提示用户 输入什么样的数据。 如果在input函数调用时采用's'选项,则允 许用户输入一个字符串。例如,想输入一 个人的姓名,可采用命令: xm=input('What''s your name?','s');
2.数据的输出 MATLAB提供的命令窗口输出函 数主要有disp函数,其调用格式为 disp(输出项) 其中输出项既可以为字符串,也可 以为矩阵
2.数据的输出 MATLAB提供的命令窗口输出函 数主要有disp函数,其调用格式为 disp(输出项) 其中输出项既可以为字符串,也可 以为矩阵
例4.2求一元二次方程ax2+bx+c=0的根。 程序如下: a=input('a=?'); b=input('b=?'); c=input('c-?'); d=b*b-4*a*c; x=[(-b+sqrt(d)/(2*a),(-b-sqrt(d)/(2*a)l; disp(['x1=',num2str(x(1)),',x2=',num2str(x(2)));
例4.2 求一元二次方程ax2 +bx+c=0的根。 程序如下: a=input('a=?'); b=input('b=?'); c=input('c=?'); d=b*b-4*a*c; x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)]; disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);
3.程序的暂停 暂停程序的执行可以使用pause函数, 其调用格式为: pause(延迟秒数) 如果省略延迟时间,直接使用pause, 则将暂停程序,直到用户按任一键后 程序堡续执行。 若要强行中止程序的运行可使用 Ctr+C命令
3.程序的暂停 暂停程序的执行可以使用pause函数, 其调用格式为: pause(延迟秒数) 如果省略延迟时间,直接使用pause, 则将暂停程序,直到用户按任一键后 程序继续执行。 若要强行中止程序的运行可使用 Ctrl+C命令