收藏 分销(赏)

MATLAB简介及程序编写.ppt

上传人:可**** 文档编号:744267 上传时间:2024-02-29 格式:PPT 页数:50 大小:887KB 下载积分:11 金币
下载 相关 举报
MATLAB简介及程序编写.ppt_第1页
第1页 / 共50页
MATLAB简介及程序编写.ppt_第2页
第2页 / 共50页


点击查看更多>>
资源描述
高 等 数 学 实 验第一章 MATLAB 简介MATLAB MATLAB 简介简介 一、关于MATLAB 、MATLAB的特点 、MATLAB工具箱及启动 二、MATLAB程序编写、MTLAB的基本元素及使用方法 、M文件及函数、程序语言的编写三、上机实验MATLAB 简介 关于MATLAB、MATLABMATLAB的特点的特点功能强大功能强大语言简单语言简单扩充能力强、可开发性强扩充能力强、可开发性强编程易、效率高编程易、效率高 (从形式上看,从形式上看,MATLABMATLAB程序文程序文 件是一个纯文本文件,扩展名为件是一个纯文本文件,扩展名为m.m.用任何字处理软件都用任何字处理软件都可以对它进行编写和修改,因此程序易调试,人机交互可以对它进行编写和修改,因此程序易调试,人机交互性强。性强。)、MATLABMATLAB工具箱及启动工具箱及启动()()MATLABMATLAB工具箱:工具箱:MATLAB MATLAB 主程序主程序 最优化工具箱最优化工具箱(Optimization Toolbox(Optimization Toolbox)图像处理工具箱图像处理工具箱(Image Processing Toolbox(Image Processing Toolbox)线性矩阵不等式控制工具箱线性矩阵不等式控制工具箱(LMI 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(2)MATLAB(2)MATLAB启动启动 可可以以利利用用菜菜单单、快快捷捷键键或或文文件件夹夹三三种方式进人种方式进人MATLABMATLAB工作窗口。工作窗口。MATLAB 简介 关于MATLAB MATLAB 简介 MATLAB程序编写 MTLAB的基本元素及使用方法一、一、MTLABMTLAB的基本元素及使用方法的基本元素及使用方法1 1、常量和变量、常量和变量2 2、字符串、字符串 3 3、数组和矩阵的构造、数组和矩阵的构造4 4、运算符、运算符 5 5、数组和矩阵的运算、数组和矩阵的运算 1 1常量和变量常量和变量1 1)常量和变量的定义)常量和变量的定义 常常量量是是MATLABMATLAB语语言言预预定定义义的的一一些些变变量量,在在默默认认的的情情况况下下这这些些变量的值为常数。变量的值为常数。变变量量是是MATLABMATLAB的的基基本本元元素素之之一一,与与其其他他常常规规程程序序设设计计语语言言不不同同的的是是MATLABMATLAB语语言言不不要要求求对对所所使使用用的的变变量量进进行行事事先先说说明明,而而且且它它也也不不需需要要指指定定变变量量的的类类型型,系系统统会会根根据据该该变变量量被被赋赋予予的的值值或或是是对对该该变变量所进行的操作来自动确定变量的类型。量所进行的操作来自动确定变量的类型。变变量量的的命命名名规规则则:变变量量名名长长度度不不超超过过3131位位,超超过过3131位位的的字字符符系系统统将将忽忽略略不不计计;变变量量名名区区分分大大小小写写;变变量量名名必必须须以以字字母母开开头头,变量名中可以包含字母、数字或下划线。变量名中可以包含字母、数字或下划线。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写 2 2)常量和变量的运算)常量和变量的运算 MATLABMATLAB关于常量和变量的运算与关于常量和变量的运算与C C语言基本相同语言基本相同 例:计算例:计算MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写 MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写2 2字符串字符串 字字符符和和字字符符串串也也是是MATLABMATLAB的的重重要要组组成成部部分分,MATLABMATLAB具具有有强强大大的的字字符符串串处处理理功功能能,特特别别是是在在MATLAB MATLAB 6.56.5中中有有专专门门的的符符号号运运算算工工具具箱箱(Symbolic toolbox)(Symbolic toolbox)使其进行符号运算的功能更为强大使其进行符号运算的功能更为强大。1 1)设定字符串)设定字符串 MATLABMATLAB对对字字符符串串的的设设定定非非常常简简单单,只只需需用用单单引引号号,将将需需设设定定的的字符串引注即可字符串引注即可。2 2)字符串的操作)字符串的操作 由由于于MATLABMATLAB语语言言是是采采用用C C语语言言开开发发的的,因因此此它它的的字字符符串串操操作作与与C C语语言言的相应操作基本相同。在的相应操作基本相同。在MATLAHMATLAH中用中用evaleval函数函数来执行字符串的功能。来执行字符串的功能。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写3 3数组和矩阵的构造数组和矩阵的构造1)1)数组数组 只要用空格或逗号间隔数组元素只要用空格或逗号间隔数组元素,并用方括号括起来就可以了。并用方括号括起来就可以了。例如例如 x=0 1x=0 1,7 57 5注:还可以用增量法和注:还可以用增量法和linspacelinspace函数法来构造数组增量法构造数组。函数法来构造数组增量法构造数组。增量法构造数组增量法构造数组 例如例如 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=linspace(0,10,5)MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写2)2)矩阵矩阵 MATLAB里,二数组称为矩阵,在方括号里输入多个元素可以构造矩阵的一个行,并用逗号或空格将每个元素隔开,不同行用分号隔开.例如,b=0 1 5;3 7 9 MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写4 4运算符运算符 与与其其他他程程序序语语言言类类似似,MATLAB,MATLAB提提供供了了数数学学表表达达式式功功能能.但但是是,与与大多数程序语言不同的是大多数程序语言不同的是,这些表达式主要对矩阵操作这些表达式主要对矩阵操作.算算术术运运算算符符实实现现四四则则运运算算以以及及幂幂,转转置置等等运运算算,表表达达式式采采用用的的算术运算符如表算术运算符如表1.11.1所示。所示。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写5 5数组和矩阵的运算数组和矩阵的运算 由由数数学学知知识识可可知知,数数组组和和矩矩阵阵有有着着不不同同的的概概念念。在在MATLABMATLAB中中,数数组组和和矩矩阵阵在在形形式式上上很很多多一一致致之之处处,但但是是实实际际上它们遵循不同的运算规则。上它们遵循不同的运算规则。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写MATLAB MATLAB 简介简介 MATLAB 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*c d=b*c保存为保存为math.m math.m 在命令窗口中输入在命令窗口中输入mathmath可以执行文件。可以执行文件。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写(2)(2)函数式函数式M M文件文件 例如给出例如给出x x求求在编辑器中输入在编辑器中输入 function y=tentimes(x)function y=tentimes(x)%本程序求输入值与本程序求输入值与1010的乘积的乘积%用演示用演示MATLABMATLAB函数帮助的实现方法函数帮助的实现方法y=x*10;y=x*10;将它保存到将它保存到MATLABMATLAB的的workwork目录中目录中,M,M文件名为文件名为tentimes.mtentimes.mMATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写在命令窗口输入在命令窗口输入 help tentimeshelp tentimes显示显示 本程序求输入值与本程序求输入值与1010的乘积的乘积 用演示用演示MATLABMATLAB函数帮助的实现方法函数帮助的实现方法输入输入 y=tentimes(10)y=tentimes(10)得到返回值得到返回值 y=y=100 100MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写 注注:比比较较好好的的编编程程习习惯惯,往往往往在在程程序序的的开开始始部部分分 写写一一些些文文本本,提提供供关关于于怎怎么么使使用用函函数数的的帮帮助助信信息息.紧紧接接函函数数定定义义行行的的以以%符符号号开开头头的第一组连续行是函数的帮助文本的第一组连续行是函数的帮助文本.MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写2.2.函数函数 MATLABMATLAB提提供供了了很很多多内内部部数数学学函函数数,包包括括abs,sqrt,expabs,sqrt,exp和和sin.sin.对对负负数数取取平平方方根根或或对对数数不不会会导导致致错错误误,MATLAB,MATLAB会会自自动动返返回回复复数数计计算算结结果果.MATLAB.MATLAB还还提提供供了了很很多多高高级级的的数数学学函函数数,包包括括besselbessel和和gamma gamma 函函数数,在在命命令令窗窗口口入入下下面面的的命命令令,可可以以看看此类函数的列表此类函数的列表.help elfun help elfun 输输入入以以下下的的命命令令,可可以以看看到到更更多多的的高高级级数数学学函函数数和和矩矩阵阵函数函数 help specfunhelp specfun help elmat help elmatMATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写注注:(1 1)任任意意M M文文件件中中的的第第1 1个个函函数数称称为为主主函函数数.主主函函数数可可以以有任意多个子函数有任意多个子函数,它们可以作为主函数的子函数它们可以作为主函数的子函数.(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)/length(x);y=sum(x)/length(x);可以从可以从MATLABMATLAB命令行用下面的命令计算命令行用下面的命令计算3 3个数的平均值个数的平均值 average(2 5 2)average(2 5 2)ans=ans=3 3MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写注意注意:一般使主函数的名称与一般使主函数的名称与M M文件的相同文件的相同.如如果函数名与文件名不同果函数名与文件名不同,必须用文件名调用函数必须用文件名调用函数.M M文件中可以包含一个以上的函数文件中可以包含一个以上的函数.文件中除主文件中除主函数以外的函数称为子函数,主函数放在最上面函数以外的函数称为子函数,主函数放在最上面,子函子函数放在下面数放在下面,各子函数不分先后顺序各子函数不分先后顺序.MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写三、程序语言的编写三、程序语言的编写 程程序序控控制制语语句句决决定定程程序序运运行行时时的的走走向向,包包括括条条件件控控制制,循循环环控控制制,错错误误控控制制和和终终止止运运行行控控制制等等,这这里里介介绍绍条条件件控控制制和循环控制和循环控制.MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写1 1条件控制条件控制 条条件件控控制制使使得得可可以以有有选选择择地地运运行行程程序序块块.当当条条件件可可以以用用是是或或否否来来回回答答时时,使使用用ifif语语句句;当当条条件件根根据据表表达达式式值值的的不不同同可可有有多多个个选选项项时时,使使用用switchswitch和和casecase语句语句.(1 1)if语句语句 在在MATLAB中,中,if语句有语句有3种格式。种格式。(1)单分支单分支if语句:语句:if 条件条件 语句组语句组 end当当条条件件成成立立时时,则则执执行行语语句句组组,执执行行完完之之后后继继续续执执行行if语语句句的的后后继继语语句句,若条件不成立,则直接执行若条件不成立,则直接执行if语句的后继语句。语句的后继语句。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写例如例如 :当输入自变量的值:当输入自变量的值,由如下分段函数给出由如下分段函数给出的值的值 MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写编辑编辑M M文件文件math.mmath.m:x=input(x=);x=input(x=);if x0if x math mathx=1x=1x=x=1 1y=y=3 3MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写(2)双分支双分支if语句:语句:if 条件条件 语句组语句组1 else 语句组语句组2 end 当当条条件件成成立立时时,执执行行语语句句组组1,否否则则执执行行语语句句组组2,语语句句组组1或或语语句句组组2执执行行后后,再再执执行行if语语句句的的后后继继语句。语句。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写例例3-4 计算分段函数的值。计算分段函数的值。程序如下:程序如下:x=input(请输入请输入x的值的值:);if x=A&c=a&c=0&c=9 disp(abs(c)-abs(0);else disp(c);endMATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写有多个选择时有多个选择时,可以类似地使用可以类似地使用if/elseifif/elseif语句语句.例如例如 B B样条函数的判断函数样条函数的判断函数程序如下程序如下: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 1MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写(2)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;statements3;otherwise otherwise statements;statements;end end MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写 switch-expressionswitch-expression给给出出开开关关条条件件,当当有有case-expressioncase-expression与与之之匹匹配配时时,就就执执行行其其后后的的语语句句.如如果果没没有有case-expressioncase-expression与与之之匹匹配配,就就执执行行otherwiseotherwise后后面面的的语语句句.在在执执行行过过程程中中,只只有有一一个个casecase命命令令被被执执行行,当当执执行行完完命命令令后后,程程序序就就跳跳出出分分支支结结构构,执执行行endend下下面面的的语语句句.MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写 例例如如:编编写写转转换换成成绩绩等等级级的的函函数数文文件件,考考试试成成绩绩在在80,10080,100分分数数段段的的显显示示优优秀秀,在在70,80)70,80)分分数数段段显显示示良良好好,60,70),60,70)分数段显示及格分数段显示及格,0,60),0,60)分数段显示不及格分数段显示不及格.程序如下程序如下:function result=cj(x):function result=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 endMATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写保存为保存为cj.m,cj.m,在命令窗口输入在命令窗口输入:cj(98)cj(98)优秀优秀 cj(80)cj(80)优秀优秀 cj(67)cj(67)及格及格 cj(23)cj(23)不及格不及格MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写2 2循环控制循环控制 使使用用循循环环控控制制语语句句,可可以以重重复复执执行行代代码码块块,用用forfor语语句句执执行行指指定定次次数数;while;while语语句句适适合合于于循循环环一一直直执执行行,直直到到满满足足条条件件为为止止的的情情况况;continuecontinue和和breakbreak语语句句对对退退出出循循环环给给予予更更多多控控制制.(1)for (1)for循环循环 forfor循循环环允允许许一一组组命命令令以以固固定定的的和和预预定定的的次次数数重重复复执执行行,for,for循环的一般形式如下循环的一般形式如下:for v=expression(for v=expression(循环变量循环变量=初值:步长:终值初值:步长:终值)statements;statements;end endMATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写2 2循环结构循环结构1)for语句语句for语句的格式为:语句的格式为:for 循环变量循环变量=表达式表达式1:表达式表达式2:表达式表达式3 循环体语句循环体语句 end其其中中表表达达式式1的的值值为为循循环环变变量量的的初初值值,表表达达式式2的的值值为为步步长长,表表达达式式3的的值值为为循循环环变变量量的的终终值值。步步长长为为1时,表达式时,表达式2可以省略。可以省略。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写例例3-9 已知已知,当,当n=100时,求时,求y的值。的值。程序如下:程序如下:y=0;n=100;for i=1:n y=y+1/(2*i-1);endyMATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写在在实实际际MATLAB编编程程中中,采采用用循循环环语语句句会会降降低低其其执执行行速速度度,所以前面的程序通常由下面的程序来代替:所以前面的程序通常由下面的程序来代替:n=100;i=1:2:2*n-1;y=sum(1./i);yMATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写(2)(2)while语句语句 while语句的一般格式为:语句的一般格式为:while(条件条件)循环体语句循环体语句 end 其执行过程为:若条件成立,则执行循其执行过程为:若条件成立,则执行循环体语句,执行后再判断条件是否成立,如环体语句,执行后再判断条件是否成立,如果不成立则跳出循环。果不成立则跳出循环。MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写例如例如:求自然数前项求自然数前项n n和和,输入项数输入项数n n 程序如下程序如下:n=input(n=)n=input(n=)sum=0;k=1;%sum=0;k=1;%给和与循环变量赋初值给和与循环变量赋初值 while k=nwhile 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 55MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写(3)continue(3)continue命令命令 continuecontinue命命令令经经常常与与forfor或或whilewhile语语句句一一起起使使用用,作作用用是是结结束束本本次次循循环环,即即跳跳过过循循环环体体中中下下面面尚尚未未执执行的语句行的语句,接着下一次是否执行循环的判断接着下一次是否执行循环的判断.(4)break(4)break命令命令 breakbreak命命令令经经常常与与forfor或或whilewhile语语句句一一起起使使用用,作用是终止本次循环作用是终止本次循环,跳出最内层的循环跳出最内层的循环.MATLAB MATLAB 简介简介 MATLAB MATLAB程序编写程序编写(3)continue(3)continue命令命令 continuecontinue命命令令经经常常与与forfor或或whilewhile语语句句一一起起使使用用,作作用用是是结结束束本本次次循循环环,即即跳跳过过循循环环体体中中下下面面尚尚未未执执行的语句行的语句,接着下一次是否执行循环的判断接着下一次是否执行循环的判断.(4)break(4)break命令命令 breakbreak命命令令经经常常与与forfor或或whilewhile语语句句一一起起使使用用,作用是终止本次循环作用是终止本次循环,跳出最内层的循环跳出最内层的循环.MATLAB MATLAB 简介简介 上机实验上机实验MATLAB MATLAB 简介简介 上机实验上机实验程序程序:1 1、x=input(x=);x=input(x=);if x0 if x0 elseif x0 y=1;y=1;else else y=0;y=0;end end x,y x,yMATLAB MATLAB 简介简介 上机实验上机实验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 jishuheMATLAB MATLAB 简介简介 上机实验上机实验课外上机实验
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 通信科技 > 计算机应用

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服