资源描述:
《matlab常用基本语法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二部分MATLAB基本语法1.变量及其赋值2.矩阵及其元素的赋值3.矩阵的初等运算4.逻辑判断及流程控制5.绘图6.M文件和程序调试作业MATLAB语句形式>>变量=表达式;%注释=将表达式的值赋予变量。当键入回车键该语句被执行。语句执行之后,窗口自动显示出执行结果。;结果不被显示,但它依然被赋值并在MATLAB工作空间中分配了内存。,隔开写在一行的多行命令。%后为注释,不执行。.1变量及其赋值标识符变量名,常量名<19个字符如变量x,常量pi函数名,文件名<8个字符如查看数据类型的whos函数英文字母(区分大小写)
2、、阿拉伯数字和下划线组成,第一个字符必须是英文字母。数NUMBERS数据格式:双精度二进制输出格式:8种COMMAND:format如formatlong指令的含义是用15位数字表示数据的输出格式。复数虚数Imaginarynumbers用i或j做后缀如1+2i;标准变量和常量pi3.14159265…i或j虚数单位inf无穷大运算符Operators+addition,–subtraction*multiplication/division,leftdivision^powerrelationaloperators:
3、>,<,>=,<=,==logicaloperators:&(and),
4、(or),~(not),xor异或【例.1】简单的算术运算结果(1)用键盘在MATLAB指令窗中输入以下内容>>(12+2*(7-4))/3^2(2)在上述表达式输入完成后,按【Enter】键,该指令被执行。(3)在指令执行后,MATLAB指令窗中将显示以下结果。ans=2【例.2】指令的续行输入(以下格式在除Notebook外的MATLAB环境中可运行)>>S=1-1/2+1/3-1/4+1/5-1/6...+1/7-1/8S=0.6345空一
5、格常用数学函数abs(x),sin(),cos(),tan(),asin(),acos(),atan()sqrt(),exp(),imag()(复数虚部),real()(复数实部),log(),log10(),conj()(共扼复数).2矩阵及其元素的赋值向量的生成:用线性等间距生成向量矩阵[start:step:end]其中start为起始值,step为步长,end为终止值。当步长为1时可省略step参数;另外step也可以取负数。》a=1:2:10ans=13579冒号TheColonOperator>>1:10%增
6、量为1ans=12345678910>>100:-7:50ans=10093867972655851>>0:pi/4:pians=00.78541.57082.35623.1416或采用更为形象的描述方法:a=[a11a12a13;a21a22a23;a31a32a33]MATLAB输入数组有以下基本规则:(1)数组元素列入方括号[]中;(2)每行内的元素间用逗号或空格分开;(3)行与行之间用分号或回车键(Enter)隔开。注意:以上几种形式中,aij可以是数值、变量、表达式或字符串。如果是变量或表达式,则执行该语句前一
7、定要首先通过用户输入或通过前面执行的表达式对变量或由变量组成的表达式进行赋值。表达式和变量可以任意组合形式出现。如果是字符串,则每一行中的字母个数应相同。例如:>>A=[163213;510118;96712;415141]A=16594310615211714138121A=16594310615211714138121求和sum,转置transpose,对角线diag>>sum(A)%计算A阵各列元素的和ans=34343434A=>>diag(A)%获取主对角线diagonal的元素16594310
8、615211714138121ans=161071>>sum(diag(A))%求对角线上元素之和ans=34下标SubscriptsA(i,j)表示A的i行j列,例如A(4,2)就是15。>>A(1,4)+A(2,4)+A(3,4)+A(4,4)%求4列的和ans=34单下标A(k)用于二维矩阵,则将矩阵视为一个长列向量,从第1列的A(1,1)开始的各列元素,从上到下一列一列的排顺序。如A(8)就是A(4,2)的另一种表示方法。矩阵下标里的冒号>>sum(A(1:4,4))%计算第4列前4行元素>>sum(A(:
9、,end))%如果只要冒号本身,则代表矩阵行或列的所有元素,end代表最后一行或列。ans=34>>sum(A(1:16))/4ans=34基本矩阵zeros:全0阵ones:全1阵rand:均分布随机矩阵randn正态分布随机矩阵矩阵的逆inv(A)A=[123;149;8101]>>inv(A)ans=8.600