第4章Matlab编程.ppt
《第4章Matlab编程.ppt》由会员分享,可在线阅读,更多相关《第4章Matlab编程.ppt(78页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真计计 算算 机机 仿仿 真真第四章第四章MatLab 程序设计程序设计计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真2 目目标:了解了解MATLABMATLAB,能,能够熟熟练掌握数掌握数学(矩学(矩阵)运算,)运算,简单编程,程,简单的的数据数据处理及基本理及基本图形形绘制。制。教材:教材:特点:特点:完全不必具完全不必具备其它其它语言的基言的基础,各年各年级各各专业。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真3目目 录录4.1 Matlab程序控制(for、while循环,
2、if-else-end、switch-case分枝,try-catch容错指令、交互指令)4.2 M脚本文件和M函数文件4.3 变量的检测传递和子函数4.4 串演算函数(eval、feval、内联函数)4.5 函数句柄4.6 符号计算计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真41 1数据的数据的数据的数据的输输入入入入 从从从从键盘输键盘输入数据,入数据,入数据,入数据,则则可以使用可以使用可以使用可以使用inputinput函数来函数来函数来函数来进进行,行,行,行,该该函数的函数的函数的函数的调调用格式用格式用格式用格式为为:A=input(A=input(提示信
3、息,提示信息,提示信息,提示信息,选项选项);其中提示信息其中提示信息其中提示信息其中提示信息为为一个字符串,用于提示用一个字符串,用于提示用一个字符串,用于提示用一个字符串,用于提示用户输户输入什么入什么入什么入什么样样的的的的数据。数据。数据。数据。如果在如果在如果在如果在inputinput函数函数函数函数调调用用用用时时采用采用采用采用ss选项选项,则则允允允允许许用用用用户输户输入一个入一个入一个入一个字符串。例如,想字符串。例如,想字符串。例如,想字符串。例如,想输输入一个人的姓名,可采用命令:入一个人的姓名,可采用命令:入一个人的姓名,可采用命令:入一个人的姓名,可采用命令:xm
4、xm=input(Whatsinput(Whats your your name?,sname?,s););4.1 程序控制结构程序控制结构4.1.1 顺序结构顺序结构计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真52数据的数据的输出出 MATLAB提供的命令窗口提供的命令窗口输出函数主要有出函数主要有disp函数,其函数,其调用格式用格式为 disp(输出出项)其中其中输出出项既可以既可以为字符串,也可以字符串,也可以为矩矩阵。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真6 例例例例4-14-1 输输入入入入x,yx,y的的的的值值,并将它,并将
5、它,并将它,并将它们们的的的的值值互互互互换换后后后后输输出。出。出。出。程序如下:程序如下:程序如下:程序如下:x=x=input(Inputinput(Input x please.);x please.);y=y=input(Inputinput(Input y please.);y please.);z=x;z=x;x=y;x=y;y=z;y=z;disp(xdisp(x););disp(ydisp(y););例例4-1计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真7例例4-2 求一元二次方程求一元二次方程ax2+bx+c=0的根。的根。程序如下:程序如下:a=i
6、nput(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);例例4-2计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真83程序的程序的暂停停 暂停程序的停程序的执行可以使用行可以使用pause函数,其函数,其调用格式用格式为:pause(延延迟秒数秒数)如果如果省略省略延延迟时间,直接使用,直接使用pause,则将将暂停程序,直到用停程序,直到用户按任一按任一键后程序后程序继续执行。行。
7、若要若要强行中止程序的运行可使用行中止程序的运行可使用Ctrl+C命命令。令。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真94.1.2 选择结构选择结构1if语句句 在在MATLAB中,中,if语句有句有3种格式。种格式。(1)单分支分支if语句:句:if 条件条件 语句句组 end 当条件成立当条件成立时,则执行行语句句组,执行完之行完之后后继续执行行if语句的后句的后继语句,若条件不成立,句,若条件不成立,则直接直接执行行if语句的后句的后继语句。句。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真10 (2)双分支双分支if语句:句:if 条件
8、条件 语句句组1 else 语句句组2 end 当条件成立当条件成立时,执行行语句句组1,否,否则执行行语句句组2,语句句组1或或语句句组2执行后,再行后,再执行行if语句句的后的后继语句。句。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真11例例4-3 计算分段函数的算分段函数的值。程序如下:程序如下:x=input(请输入入x的的值:);if x=A&c=A&c=a&c=a&c=0&c=0&c=9 disp(abs(c)-abs(0);disp(abs(c)-abs(0);elseelse disp(cdisp(c););endend例例4-4计计计计计计 算算算算算
9、算 机机机机机机 仿仿仿仿仿仿 真真真真真真14 switch switch switch switch语语句根据表达式的取句根据表达式的取句根据表达式的取句根据表达式的取值值不同,分不同,分不同,分不同,分别执别执行不同的行不同的行不同的行不同的语语句,其句,其句,其句,其语语句格式句格式句格式句格式为为:switch switch switch switch 表达式表达式表达式表达式 case case case case 表达式表达式表达式表达式1 1 1 1 语语句句句句组组1 1 1 1 case case case case 表达式表达式表达式表达式2 2 2 2 语语句句句句组组
10、2 2 2 2 case case case case 表达式表达式表达式表达式m m m m 语语句句句句组组m m m m otherwise otherwise otherwise otherwise 语语句句句句组组n n n n end end end end2switch语句语句当表达式的值等于表达式当表达式的值等于表达式当表达式的值等于表达式当表达式的值等于表达式1 1 1 1的值时,的值时,的值时,的值时,执行语句组执行语句组执行语句组执行语句组1;1;1;1;当表达式的值等于表达式当表达式的值等于表达式当表达式的值等于表达式当表达式的值等于表达式2 2 2 2的值时,的值时,
11、的值时,的值时,执行语句组执行语句组执行语句组执行语句组2 2 2 2,;当表达式的值等于表达式当表达式的值等于表达式当表达式的值等于表达式当表达式的值等于表达式m m m m的值时,的值时,的值时,的值时,执行语句组执行语句组执行语句组执行语句组m;m;m;m;当表达式的值不等于当表达式的值不等于当表达式的值不等于当表达式的值不等于casecasecasecase所列的所列的所列的所列的表达式的值时,执行语句组表达式的值时,执行语句组表达式的值时,执行语句组表达式的值时,执行语句组n n n n。任意一个分支的语句执行完后,任意一个分支的语句执行完后,任意一个分支的语句执行完后,任意一个分支
12、的语句执行完后,直接执行直接执行直接执行直接执行switchswitchswitchswitch语句的下一句。语句的下一句。语句的下一句。语句的下一句。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真15例例例例4-54-5 某商某商某商某商场对顾场对顾客所客所客所客所购买购买的商品的商品的商品的商品实实行打折行打折行打折行打折销销售,售,售,售,标标准如下准如下准如下准如下(商品价格用商品价格用商品价格用商品价格用priceprice来表示来表示来表示来表示):price200 price200 没有折扣没有折扣没有折扣没有折扣 200price500 3%200pric
13、e500 3%折扣折扣折扣折扣 500price1000 5%500price1000 5%折扣折扣折扣折扣 1000price2500 8%1000price2500 8%折扣折扣折扣折扣 2500price5000 10%2500price 0)0)sum sum mean=sum/mean=sum/cntcntendend例例4-11计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真303 3breakbreak语语句和句和句和句和continuecontinue语语句句句句与循与循与循与循环结环结构相关的构相关的构相关的构相关的语语句句句句还还有有有有breakbre
14、ak语语句和句和句和句和continuecontinue语语句。它句。它句。它句。它们们一般与一般与一般与一般与if if语语句配合使用。句配合使用。句配合使用。句配合使用。breakbreak语语句用于句用于句用于句用于终终止循止循止循止循环环的的的的执执行。当在循行。当在循行。当在循行。当在循环环体体体体内内内内执执行到行到行到行到该语该语句句句句时时,程序将跳出循,程序将跳出循,程序将跳出循,程序将跳出循环环,继续执继续执行循行循行循行循环语环语句的下一句的下一句的下一句的下一语语句。句。句。句。continuecontinue语语句控制跳句控制跳句控制跳句控制跳过过循循循循环环体中的某
15、些体中的某些体中的某些体中的某些语语句。句。句。句。当在循当在循当在循当在循环环体内体内体内体内执执行到行到行到行到该语该语句句句句时时,程序将跳,程序将跳,程序将跳,程序将跳过过循循循循环环体中所有剩下的体中所有剩下的体中所有剩下的体中所有剩下的语语句,句,句,句,继续继续下一次循下一次循下一次循下一次循环环。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真31例例例例4-124-12 求求求求100100,200200之之之之间间第一个能被第一个能被第一个能被第一个能被2121整除的整数。整除的整数。整除的整数。整除的整数。程程程程序如下:序如下:序如下:序如下:for
16、 n=100:200for n=100:200 if rem(n,21)=0 if rem(n,21)=0 continue continue end end disp(ndisp(n)break breakendendn n例例4-12计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真324 4循循环的嵌套的嵌套 如果一个循如果一个循环结构的循构的循环体又包括一个体又包括一个循循环结构,就称构,就称为循循环的嵌套,或称的嵌套,或称为多多重循重循环结构。构。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真33 例例例例4-134-13 若一个数等于它的各个
17、真因子之和,若一个数等于它的各个真因子之和,若一个数等于它的各个真因子之和,若一个数等于它的各个真因子之和,则则称称称称该该数数数数为为完完完完数,如数,如数,如数,如6=1+2+36=1+2+3,所以,所以,所以,所以6 6是完数。求是完数。求是完数。求是完数。求2,5002,500之之之之间间的全部完数。的全部完数。的全部完数。的全部完数。for m=2:500for m=2:500 s=0;s=0;for k=1:m/2 for k=1:m/2 if if rem(m,krem(m,k)=0)=0 s=s=s+ks+k;end end end end if m=s if m=s disp
18、(mdisp(m););end endendend#include#include intint main()main()intint a,i,ma,i,m;/*/*循环控制选取循环控制选取循环控制选取循环控制选取25002500中的各数进行判断中的各数进行判断中的各数进行判断中的各数进行判断*/for(afor(a=2;a500;a+)=2;a500;a+)/*/*计算计算计算计算a a的因子,并将各因子之和的因子,并将各因子之和的因子,并将各因子之和的因子,并将各因子之和m=am=a,*/*/*则则则则a a是完全数输出是完全数输出是完全数输出是完全数输出*/for(mfor(m=0,i=
19、1;i=a/2;i+)=0,i=1;i save save b.matb.mat x y x y load load b.matb.mat%或者或者或者或者load bload b例例例例:load load gatlingatlin%gatlingatlin为为文件名,如文件名,如文件名,如文件名,如womanwoman image(Ximage(X););Colormap(grayColormap(gray)计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真382).m2).m2).m2).m文件文件文件文件 m m m m文件的文件的文件的文件的语语法法法法类类似于似于
20、似于似于c c c c语语言,但又有其自身特点。言,但又有其自身特点。言,但又有其自身特点。言,但又有其自身特点。它只是一个它只是一个它只是一个它只是一个简单简单的的的的ASCIIASCIIASCIIASCII码码文本文件,文本文件,文本文件,文本文件,执执行程序行程序行程序行程序时时逐逐逐逐行解行解行解行解释释运行程序,运行程序,运行程序,运行程序,matlabmatlabmatlabmatlab是解是解是解是解释释性的性的性的性的编编程程程程语语言。言。言。言。m m m m文件有两文件有两文件有两文件有两类类独立的独立的独立的独立的m m m m文件文件文件文件 称命令文件称命令文件称命
21、令文件称命令文件 可可可可调调用用用用m m m m文件文件文件文件 称函数文件称函数文件称函数文件称函数文件(1).(1).(1).(1).命令文件命令文件命令文件命令文件 简单简单的的的的m m m m文件文件文件文件 命令文件命令文件命令文件命令文件实际实际上是一串指令的集合,与在命令窗上是一串指令的集合,与在命令窗上是一串指令的集合,与在命令窗上是一串指令的集合,与在命令窗口逐行口逐行口逐行口逐行执执行文件中的所有指令,其行文件中的所有指令,其行文件中的所有指令,其行文件中的所有指令,其结结果是一果是一果是一果是一样样的。的。的。的。没有没有没有没有输输入入入入输输出参数。出参数。出参
22、数。出参数。计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真39命令文件包括两部分:注命令文件包括两部分:注命令文件包括两部分:注命令文件包括两部分:注释释文件和程序文件文件和程序文件文件和程序文件文件和程序文件%RANK%RANKNumber of linearly independent rows or columns.Number of linearly independent rows or columns.%K=RANK(X)is the number of singular values of XK=RANK(X)is the number of singula
23、r values of X%that are larger than MAX(SIZE(X)*NORM(X)*EPS.that are larger than MAX(SIZE(X)*NORM(X)*EPS.%K=K=RANK(X,tolRANK(X,tol)is the number of singular values of X that)is the number of singular values of X that%are larger than are larger than toltol.%Copyright(c)1984-94 by The Copyright(c)1984-
24、94 by The MathWorksMathWorks,Inc.,Inc.s=s=svd(xsvd(x););if(if(narginnargin=1)=1)toltol=max(size(xmax(size(x)*)*max(smax(s)*)*epseps;endendr=r=sum(ssum(s toltol););程序部分计计计计计计 算算算算算算 机机机机机机 仿仿仿仿仿仿 真真真真真真403).matlab3).matlab3).matlab3).matlab内置函数文件内置函数文件内置函数文件内置函数文件 matlabmatlabmatlabmatlab自定自定自定自定义义的函
25、数文件称内置函数文件的函数文件称内置函数文件的函数文件称内置函数文件的函数文件称内置函数文件 调调用内置函数的方法:使用函数名并用内置函数的方法:使用函数名并用内置函数的方法:使用函数名并用内置函数的方法:使用函数名并给给出相出相出相出相应应的的的的入口、出口参数即可。入口、出口参数即可。入口、出口参数即可。入口、出口参数即可。例如:例如:例如:例如:sin.msin.msin.msin.m函数函数函数函数用用用用type sintype sintype sintype sin查查不到。不到。不到。不到。调调用格式:用格式:用格式:用格式:y=sin(2*x)y=sin(2*x)y=sin(2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 编程
限制150内