资源描述:
《上机实验中遇到的一些matlab函数》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、上机实验中遇到的一些Matlab函数(1)*.*^.^(2)a:b:clinspace(a,b,c)(3)loglog10(4)exp(5)lengthsize(6)roundceilfloor(7)invmod3.1Matlab的程序类型3.2程序流程控制3.3关系与逻辑运算符3.4函数3.5绘图第三章MATLAB编程基础3.1Matlab程序类型1、脚本文件以.m格式进行存取,包含一连串的MATLAB指令和必要的注解,所有的变量都存在Workspace中,没有输入参数,也不返回参数。2、函数文件(helpfunction)以.m格式存在,函数接受输入参数,然后执行并输出结果。3.2程
2、序流程控制1、If,else,elseif2、For3、While4、Switch1、If,else,elseifTYPE1:if expressionstatementsendExample,ifmod(a,2)==0a=a+3;endTYPE2:ifexpressionstatementselsestatementsendExample:if(sum(A(:,2))>10)A(1,1)=A(1,1)+B(1,1)A(2,1)=2*A(2,1)elseA(1,1)=A(1,1)+A(1,1);A(2,1)=0.5endTYPE3:ifexpressionstatementselse
3、ifexpressionstatementselsestatementsendIf语句可以嵌套ifexpression1statementselseifexpression2statementselsestatementsendend步长缺省值为1,可以在正实数或负实数范围内任意指定。对于正数,循环变量的值大于终止值时,循环结束;对于负数,循环变量的值小于终止值时,循环结束。循环结构可以嵌套使用。2、for循环语句基本格式for循环变量=起始值:步长:终止值循环体end例:helpfor3、while循环语句基本格式while表达式循环体end若表达式为真,则执行循环体的内容,执行后再判
4、断表达式是否为真,若不为真,则跳出循环体,向下继续执行。While循环和for循环的区别在于,while循环结构的循环体被执行的次数不是确定的,而for结构中循环体的执行次数是确定的。4、Switch语句switchexpression[canbeascalaror astring]casetest1commandset1casetest2commandset2......................................otherwisecommandsetlastend3.3关系和逻辑运算符Operatoroperation==Equalto~=Notequalto>G
5、reaterthan>=Greaterthanorequalto大于A>Bans=[1000]A>1ans=[0100]<=小于等于A<=Bans=[0111]>=大于等于A>=Bans=[1100]==等于A=Bans=[0100];A=1ans=[1000]~=不等于A~=Bans=[1011];A~=1ans=[0111]OperatorOperation&LogicalAND
6、LogicalOR~LogicalN
7、OT~非~A=[0010]~1=0注意:在处理逻辑运算时,运算元只有两个值即0和1,所以如果指定的数为0,MATLAB认为其为0,而任何数不等于0,则认为是1。设有:A=[5-40-0.5]B=[0109]&与A&B=[0101]A&1=[1101]
8、或A
9、B=[1101]A
10、1=[1111]Computess=1;k=2;exact=pi^2/6whileabs(1-ss/exact)>=1e-4ss=ss+1/k^2;k=k+1;end3.4函数的编写格式:function返回变量列表=函数名(输入变量列表)function[outarg1,outarg2,…]=fname(inar
11、g1,inarg2,…)求n!functionk=factorial(n)ifnargin>1,error(‘输入变量个数错误,只能输入个数量’);endifnargout﹥1,error(‘输出变量个数过多’);endifabs(n-floor(n))﹥eps︱n﹤0%(判定n是否为非负整数)error(‘n应该为非负数’);endifn﹥1k=k*factorial(n-1);elseif(n==0
12、n==1)k=1;enden