MATLAB简介及程序编写PPT课件

上传人:痛*** 文档编号:181975612 上传时间:2023-01-19 格式:PPT 页数:51 大小:363KB
收藏 版权申诉 举报 下载
MATLAB简介及程序编写PPT课件_第1页
第1页 / 共51页
MATLAB简介及程序编写PPT课件_第2页
第2页 / 共51页
MATLAB简介及程序编写PPT课件_第3页
第3页 / 共51页
资源描述:

《MATLAB简介及程序编写PPT课件》由会员分享,可在线阅读,更多相关《MATLAB简介及程序编写PPT课件(51页珍藏版)》请在装配图网上搜索。

1、2021/3/91高 等 数 学 实 验第一章 MATLAB 简介2021/3/92MATLAB 简介 一、关于MATLAB 、MATLAB的特点 、MATLAB工具箱及启动 二、MATLAB程序编写、MTLAB的基本元素及使用方法 、M文件及函数、程序语言的编写三、上机实验2021/3/93MATLAB 简介 关于MATLAB、MATLABMATLAB的特点的特点功能强大功能强大语言简单语言简单扩充能力强、可开发性强扩充能力强、可开发性强编程易、效率高编程易、效率高 (从形式上看,从形式上看,MATLABMATLAB程序文程序文 件是一个纯文本文件,扩展名为件是一个纯文本文件,扩展名为m.m

2、.用任何字处理软件都用任何字处理软件都可以对它进行编写和修改,因此程序易调试,人机交互可以对它进行编写和修改,因此程序易调试,人机交互性强。性强。)2021/3/94 、MATLABMATLAB工具箱及启动工具箱及启动()()MATLABMATLAB工具箱:工具箱:MATLAB MATLAB 主程序主程序 最优化工具箱最优化工具箱(Optimization Toolbox(Optimization Toolbox)图像处理工具箱图像处理工具箱(Image Processing Toolbox(Image Processing Toolbox)线性矩阵不等式控制工具箱线性矩阵不等式控制工具箱(L

3、MI Control Toolbox)(LMI Control Toolbox)偏微分方程工具箱偏微分方程工具箱(Partial Differential Equation (Partial Differential Equation Toolbox)Toolbox)统计工具箱统计工具箱(Statistics Toolbox)(Statistics Toolbox)符号数学工具箱符号数学工具箱(Symbolic Math Toolbox)(Symbolic Math Toolbox)MATLAB 简介 关于MATLAB 2021/3/95(2)MATLAB(2)MATLAB启动启动 可以利用菜

4、单、快捷键或文件夹三可以利用菜单、快捷键或文件夹三种方式进人种方式进人MATLABMATLAB工作窗口。工作窗口。MATLAB 简介 关于MATLAB 2021/3/96MATLAB 简介 MATLAB程序编写 MTLAB的基本元素及使用方法一、一、MTLABMTLAB的基本元素及使用方法的基本元素及使用方法1 1、常量和变量、常量和变量2 2、字符串、字符串 3 3、数组和矩阵的构造、数组和矩阵的构造4 4、运算符、运算符 5 5、数组和矩阵的运算、数组和矩阵的运算 2021/3/97 1 1常量和变量常量和变量1 1)常量和变量的定义)常量和变量的定义 常量是常量是MATLABMATLAB

5、语言预定义的一些变量,在默认的情况下这些语言预定义的一些变量,在默认的情况下这些变量的值为常数。变量的值为常数。变量是变量是MATLABMATLAB的基本元素之一,与其他常规程序设计语言不的基本元素之一,与其他常规程序设计语言不同的是同的是MATLABMATLAB语言不要求对所使用的变量进行事先说明,而且它语言不要求对所使用的变量进行事先说明,而且它也不需要指定变量的类型,系统会根据该变量被赋予的值或是对也不需要指定变量的类型,系统会根据该变量被赋予的值或是对该变量所进行的操作来自动确定变量的类型。该变量所进行的操作来自动确定变量的类型。变量的命名规则:变量的命名规则:变量名长度不超过变量名长

6、度不超过3131位,超过位,超过3131位的字符位的字符系统将忽略不计;系统将忽略不计;变量名区分大小写;变量名区分大小写;变量名必须以字母开变量名必须以字母开头,变量名中可以包含字母、数字或下划线。头,变量名中可以包含字母、数字或下划线。MATLAB 简介 MATLAB程序编写 2021/3/982 2)常量和变量的运算)常量和变量的运算 MATLABMATLAB关于常量和变量的运算与关于常量和变量的运算与C C语言基本相同语言基本相同 例:计算例:计算MATLAB 简介 MATLAB程序编写 2021/3/99MATLAB 简介 MATLAB程序编写2 2字符串字符串 字符和字符串也是字符

7、和字符串也是MATLABMATLAB的重要组成部分,的重要组成部分,MATLABMATLAB具有强大具有强大的字符串处理功能,特别是在的字符串处理功能,特别是在MATLAB 6.5MATLAB 6.5中有专门的符号运算工中有专门的符号运算工具箱具箱(Symbolic toolbox)(Symbolic toolbox)使其进行符号运算的功能更为强大使其进行符号运算的功能更为强大。1 1)设定字符串)设定字符串 MATLABMATLAB对字符串的设定非常简单,只需用单引号对字符串的设定非常简单,只需用单引号,将需设,将需设定的字符串引注即可定的字符串引注即可。2 2)字符串的操作)字符串的操作

8、由于由于MATLABMATLAB语言是采用语言是采用C C语言开发的,因此它的字符串操作与语言开发的,因此它的字符串操作与C C语言的相应操作基本相同。在语言的相应操作基本相同。在MATLAHMATLAH中用中用evaleval函数函数来执行字符串来执行字符串的功能。的功能。2021/3/910MATLAB 简介 MATLAB程序编写3 3数组和矩阵的构造数组和矩阵的构造1)1)数组数组 只要用空格或逗号间隔数组元素只要用空格或逗号间隔数组元素,并用方括号括起来就可以了。并用方括号括起来就可以了。例如例如 x=0 1x=0 1,7 57 5注:还可以用增量法和注:还可以用增量法和linspac

9、elinspace函数法来构造数组增量法构造数组。函数法来构造数组增量法构造数组。增量法构造数组增量法构造数组 例如例如 b=10:15b=10:15 b=10:0.5:12 b=10:0.5:12 b=10:-1:5 b=10:-1:5 lingspace lingspace函数法构造数组函数法构造数组 用用lingspacelingspace函数构造数组函数构造数组,需要指定首尾和元素总个数需要指定首尾和元素总个数,形式为形式为 x=linspace(first,last,num)x=linspace(first,last,num)例如例如 x=linspace(0,10,5)x=lins

10、pace(0,10,5)2021/3/911MATLAB 简介 MATLAB程序编写2)2)矩阵矩阵 MATLAB里,二数组称为矩阵,在方括号里输入多个元素可以构造矩阵的一个行,并用逗号或空格将每个元素隔开,不同行用分号隔开.例如,b=0 1 5;3 7 9 2021/3/912MATLAB 简介 MATLAB程序编写4 4运算符运算符 与其他程序语言类似与其他程序语言类似,MATLAB,MATLAB提供了数学表达式功能提供了数学表达式功能.但是但是,与与大多数程序语言不同的是大多数程序语言不同的是,这些表达式主要对矩阵操作这些表达式主要对矩阵操作.算术运算符实现四则运算以及幂算术运算符实现四

11、则运算以及幂,转置等运算,表达式采用的转置等运算,表达式采用的算术运算符如表算术运算符如表1.11.1所示。所示。2021/3/913MATLAB 简介 MATLAB程序编写5 5数组和矩阵的运算数组和矩阵的运算 由数学知识可知,数组和矩阵有着不同的概念。在由数学知识可知,数组和矩阵有着不同的概念。在MATLABMATLAB中,数组和矩阵在形式上很多一致之处,但是实中,数组和矩阵在形式上很多一致之处,但是实际上它们遵循不同的运算规则。际上它们遵循不同的运算规则。2021/3/914MATLAB 简介 MATLAB程序编写2021/3/915MATLAB 简介 MATLAB程序编写2021/3/

12、916MATLAB 简介 MATLAB程序编写二、二、M M文件及函数文件及函数 1.M1.M文件文件 如果需要重复调用命令如果需要重复调用命令,或者命令的数比较多或者命令的数比较多,将它们写成将它们写成M M文文件的形式并保存件的形式并保存.M.M文件分为脚本式文件分为脚本式M M文件和函数式文件和函数式M M文件。文件。(1)(1)脚本式脚本式M M文件文件例如例如 在编辑器中输入如下代码在编辑器中输入如下代码 a=1 2 3;0,1,0;3,4,5;a=1 2 3;0,1,0;3,4,5;b=det(a)b=det(a)c=inv(a)c=inv(a)d=b d=b*c c保存为保存为m

13、ath.m math.m 在命令窗口中输入在命令窗口中输入mathmath可以执行文件。可以执行文件。2021/3/917MATLAB 简介 MATLAB程序编写(2)(2)函数式函数式M M文件文件 例如给出例如给出x x求求在编辑器中输入在编辑器中输入 function y=tentimes(x)function y=tentimes(x)%本程序求输入值与本程序求输入值与1010的乘积的乘积%用演示用演示MATLABMATLAB函数帮助的实现方法函数帮助的实现方法y=xy=x*10;10;将它保存到将它保存到MATLABMATLAB的的workwork目录中目录中,M,M文件名为文件名为

14、tentimes.mtentimes.m2021/3/918MATLAB 简介 MATLAB程序编写在命令窗口输入在命令窗口输入 help tentimeshelp tentimes显示显示 本程序求输入值与本程序求输入值与1010的乘积的乘积 用演示用演示MATLABMATLAB函数帮助的实现方法函数帮助的实现方法输入输入 y=tentimes(10)y=tentimes(10)得到返回值得到返回值 y=y=100 1002021/3/919MATLAB 简介 MATLAB程序编写 注:比较好的编程习惯注:比较好的编程习惯,往往在程序的开往往在程序的开始部分始部分 写一些文本写一些文本,提供

15、关于怎么使用函数提供关于怎么使用函数的帮助信息的帮助信息.紧接函数定义行的以紧接函数定义行的以%符号开头符号开头的第一组连续行是函数的帮助文本的第一组连续行是函数的帮助文本.2021/3/920MATLAB 简介 MATLAB程序编写2.2.函数函数 MATLABMATLAB提供了很多内部数学函数提供了很多内部数学函数,包括包括abs,sqrt,expabs,sqrt,exp和和sin.sin.对负数取平方根或对数不会导致错对负数取平方根或对数不会导致错误误,MATLAB,MATLAB会自动返回复数计算结果会自动返回复数计算结果.MATLAB.MATLAB还提供了很还提供了很多高级的数学函数多

16、高级的数学函数,包括包括besselbessel和和gamma gamma 函数函数,在命令窗在命令窗口入下面的命令口入下面的命令,可以看此类函数的列表可以看此类函数的列表.help elfun help elfun 输入以下的命令输入以下的命令,可以看到更多的高级数学函数和可以看到更多的高级数学函数和矩阵函数矩阵函数 help specfunhelp specfun help elmat help elmat2021/3/921MATLAB 简介 MATLAB程序编写注:(注:(1 1)任意任意M M文件中的第文件中的第1 1个函数称为主函数个函数称为主函数.主函数可以主函数可以有任意多个子

17、函数有任意多个子函数,它们可以作为主函数的子函数它们可以作为主函数的子函数.(2 2)大多数情况下)大多数情况下,主函数是主函数是M M文件中可以从文件中可以从MATLABMATLAB命令或从命令或从另一个另一个M M文件函数调用的唯一函数文件函数调用的唯一函数.调用该函数时调用该函数时,使用定义使用定义该函数的该函数的M M文件的名称文件的名称.例如例如,average,average 函数在文件函数在文件average.maverage.m中中.function y=average(x)%function y=average(x)%计算矢量元素的平均值计算矢量元素的平均值y=sum(x)/

18、length(x);y=sum(x)/length(x);可以从可以从MATLABMATLAB命令行用下面的命令计算命令行用下面的命令计算3 3个数的平均值个数的平均值 average(2 5 2)average(2 5 2)ans=ans=3 32021/3/922MATLAB 简介 MATLAB程序编写注意注意:一般使主函数的名称与一般使主函数的名称与M M文件的相同文件的相同.如如果函数名与文件名不同果函数名与文件名不同,必须用文件名调用函数必须用文件名调用函数.M M文件中可以包含一个以上的函数文件中可以包含一个以上的函数.文件中除主文件中除主函数以外的函数称为子函数,主函数放在最上面

19、函数以外的函数称为子函数,主函数放在最上面,子子函数放在下面函数放在下面,各子函数不分先后顺序各子函数不分先后顺序.2021/3/923MATLAB 简介 MATLAB程序编写三、程序语言的编写三、程序语言的编写 程序控制语句决定程序运行时的走向程序控制语句决定程序运行时的走向,包括条件控包括条件控制制,循环控制循环控制,错误控制和终止运行控制等错误控制和终止运行控制等,这里介绍条这里介绍条件控制和循环控制件控制和循环控制.2021/3/924MATLAB 简介 MATLAB程序编写1 1条件控制条件控制 条件控制使得可以有选择地运行程序块条件控制使得可以有选择地运行程序块.当条件可以用是或否

20、来当条件可以用是或否来回答时回答时,使用使用ifif语句语句;当条件根据表达式值的不同可有多个选项时当条件根据表达式值的不同可有多个选项时,使用使用switchswitch和和casecase语句语句.(1 1)if语句语句 在在MATLAB中,中,if语句有语句有3种格式。种格式。(1)单分支单分支if语句:语句:if 条件条件 语句组语句组 end当条件成立时,则执行语句组,执行完之后继续执行当条件成立时,则执行语句组,执行完之后继续执行if语句的后继语语句的后继语句,若条件不成立,则直接执行句,若条件不成立,则直接执行if语句的后继语句。语句的后继语句。2021/3/925MATLAB

21、简介 MATLAB程序编写例如例如 :当输入自变量的值:当输入自变量的值,由如下分段函数给出由如下分段函数给出的值的值 2021/3/926MATLAB 简介 MATLAB程序编写编辑编辑M M文件文件math.mmath.m:x=input(x=);x=input(x=);if x0if x math mathx=1x=1x=x=1 1y=y=3 32021/3/928MATLAB 简介 MATLAB程序编写(2)双分支双分支if语句:语句:if 条件条件 语句组语句组1 else 语句组语句组2 end 当条件成立时,执行语句组当条件成立时,执行语句组1,否则执行语句组,否则执行语句组2,

22、语句组,语句组1或语句组或语句组2执行后,再执行执行后,再执行if语句的语句的后继语句。后继语句。2021/3/929MATLAB 简介 MATLAB程序编写例例3-4 计算分段函数的值。计算分段函数的值。程序如下:程序如下:x=input(请输入请输入x的值的值:);if x=A&c=a&c=0&c=9 disp(abs(c)-abs(0);else disp(c);end2021/3/932MATLAB 简介 MATLAB程序编写有多个选择时有多个选择时,可以类似地使用可以类似地使用if/elseifif/elseif语句语句.例如例如 B B样条函数的判断函数样条函数的判断函数程序如下程

23、序如下:function f=pdbsline(x)function f=pdbsline(x)if x0if x0f=0;f=0;elseif x1elseif x1 f=x;f=x;elseif x2elseif x pdbsline(-1)pdbsline(-1)ans=ans=0 0 pdbsline(1.36)pdbsline(1.36)ans=ans=0.64000.6400 pdbsline(2.5)pdbsline(2.5)ans=ans=0 0 pdbsline(1)pdbsline(1)ans=ans=1 12021/3/934MATLAB 简介 MATLAB程序编写(2)

24、switch/case(2)switch/case语句语句 该语句的通用格式为该语句的通用格式为:switch switch-expression switch switch-expression case case-expression1,case case-expression1,statements1;statements1;case case-expression2,case case-expression2,statements2;statements2;case case-expression3,case case-expression3,statements3;statement

25、s3;otherwise otherwise statements;statements;end end 2021/3/935MATLAB 简介 MATLAB程序编写 switch-expressionswitch-expression给出开关条件给出开关条件,当当有有case-expressioncase-expression与之匹配时与之匹配时,就执行其后就执行其后的语句的语句.如果没有如果没有case-expressioncase-expression与之匹配与之匹配,就执行就执行otherwiseotherwise后面的语句后面的语句.在执行过程中在执行过程中,只有一个只有一个case

26、case命令被执行命令被执行,当执行完命令后当执行完命令后,程序就跳出分支结构程序就跳出分支结构,执行执行endend下面的语句下面的语句.2021/3/936MATLAB 简介 MATLAB程序编写 例如例如:编写转换成绩等级的函数文件编写转换成绩等级的函数文件,考试成绩在考试成绩在80,10080,100分分数段的显示优秀数段的显示优秀,在在70,80)70,80)分数段显示良好分数段显示良好,60,70),60,70)分数段显示分数段显示及格及格,0,60),0,60)分数段显示不及格分数段显示不及格.程序如下程序如下:function result=cj(x):function res

27、ult=cj(x)n=fix(x/10);n=fix(x/10);switch n switch n case 8,9,10 case 8,9,10 disp(disp(优秀优秀););case 7 case 7 disp(disp(良好良好););case 6 case 6 disp(disp(及格及格););otherwiseotherwise disp(disp(不及格不及格););end end2021/3/937MATLAB 简介 MATLAB程序编写保存为保存为cj.m,cj.m,在命令窗口输入在命令窗口输入:cj(98)cj(98)优秀优秀 cj(80)cj(80)优秀优秀 cj

28、(67)cj(67)及格及格 cj(23)cj(23)不及格不及格2021/3/938MATLAB 简介 MATLAB程序编写2 2循环控制循环控制 使用循环控制语句使用循环控制语句,可以重复执行代码块可以重复执行代码块,用用forfor语语句执行指定次数句执行指定次数;while;while语句适合于循环一直执行语句适合于循环一直执行,直到直到满足条件为止的情况满足条件为止的情况;continue;continue和和breakbreak语句对退出循语句对退出循环给予更多控制环给予更多控制.(1)for (1)for循环循环 forfor循环允许一组命令以固定的和预定的次数重复执循环允许一组

29、命令以固定的和预定的次数重复执行行,for,for循环的一般形式如下循环的一般形式如下:for v=expression(for v=expression(循环变量循环变量=初值:步长:终值初值:步长:终值)statements;statements;end end2021/3/939MATLAB 简介 MATLAB程序编写2 2循环结构循环结构1)for语句语句for语句的格式为:语句的格式为:for 循环变量循环变量=表达式表达式1:表达式表达式2:表达式表达式3 循环体语句循环体语句 end其中表达式其中表达式1的值为循环变量的初值,表达式的值为循环变量的初值,表达式2的的值为步长,表达

30、式值为步长,表达式3的值为循环变量的终值。步的值为循环变量的终值。步长为长为1时,表达式时,表达式2可以省略。可以省略。2021/3/940MATLAB 简介 MATLAB程序编写2021/3/941MATLAB 简介 MATLAB程序编写例例3-9 已知已知,当,当n=100时,求时,求y的值。的值。程序如下:程序如下:y=0;n=100;for i=1:n y=y+1/(2*i-1);endy2021/3/942MATLAB 简介 MATLAB程序编写在实际在实际MATLAB编程中,采用循环语句会编程中,采用循环语句会降低其执行速度,所以前面的程序通常由降低其执行速度,所以前面的程序通常由

31、下面的程序来代替:下面的程序来代替:n=100;i=1:2:2*n-1;y=sum(1./i);y2021/3/943MATLAB 简介 MATLAB程序编写(2)(2)while语句语句 while语句的一般格式为:语句的一般格式为:while(条件条件)循环体语句循环体语句 end 其执行过程为:若条件成立,则执行循其执行过程为:若条件成立,则执行循环体语句,执行后再判断条件是否成立,如环体语句,执行后再判断条件是否成立,如果不成立则跳出循环。果不成立则跳出循环。2021/3/944MATLAB 简介 MATLAB程序编写例如例如:求自然数前项求自然数前项n n和和,输入项数输入项数n n

32、 程序如下程序如下:n=input(n=)n=input(n=)sum=0;k=1;%sum=0;k=1;%给和与循环变量赋初值给和与循环变量赋初值 while k=n while k=n sum=sum+k;sum=sum+k;k=k+1;k=k+1;end end sum sum 执行程序执行程序:输入输入10,10,回车得回车得 n=n=10 10 sum=sum=55 552021/3/945MATLAB 简介 MATLAB程序编写(3)continue(3)continue命令命令 continuecontinue命令经常与命令经常与forfor或或whilewhile语句一起使用语

33、句一起使用,作用是结束本次循环作用是结束本次循环,即跳过循环体中下面尚未执即跳过循环体中下面尚未执行的语句行的语句,接着下一次是否执行循环的判断接着下一次是否执行循环的判断.(4)break(4)break命令命令 breakbreak命令经常与命令经常与forfor或或whilewhile语句一起使用语句一起使用,作用是终止本次循环作用是终止本次循环,跳出最内层的循环跳出最内层的循环.2021/3/946MATLAB 简介 MATLAB程序编写(3)continue(3)continue命令命令 continuecontinue命令经常与命令经常与forfor或或whilewhile语句一起

34、使用语句一起使用,作用是结束本次循环作用是结束本次循环,即跳过循环体中下面尚未执即跳过循环体中下面尚未执行的语句行的语句,接着下一次是否执行循环的判断接着下一次是否执行循环的判断.(4)break(4)break命令命令 breakbreak命令经常与命令经常与forfor或或whilewhile语句一起使用语句一起使用,作用是终止本次循环作用是终止本次循环,跳出最内层的循环跳出最内层的循环.2021/3/947MATLAB 简介 上机实验2021/3/948MATLAB 简介 上机实验程序程序:1 1、x=input(x=);x=input(x=);if x0 if x0 elseif x0

35、 y=1;y=1;else else y=0;y=0;end end x,y x,y2021/3/949MATLAB 简介 上机实验2 2、oushuhe=0;oushuhe=0;jishuhe=0;jishuhe=0;i=1;i=1;while i1000 while i1000 if mod(i,2)=0 if mod(i,2)=0 oushuhe=oushuhe+i;oushuhe=oushuhe+i;else else jishuhe=jishuhe+i;jishuhe=jishuhe+i;end end i=i+1;i=i+1;end end oushuhe oushuhe jishuhe jishuhe2021/3/950MATLAB 简介 上机实验课外上机实验2021/3/951放映结束 感谢各位的批评指导!谢谢 谢!谢!让我们共同进步

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!