MATLAB 练习
1 25
10)8.03.125(2
?-+? 2 23log )10sin(4)43.0(2
+?=+-e y π 3 )3/cos(*)3/(sin**10ππ =z
4 10,),3/223sin(2?===y z x y x ;
求z y x 52-+
5 建立起始值=3,增量值=5.5,终止值=44的一维数组x
6 建立等差一维数组x :首项为0,末项为π,项数为15
7 矩阵????
??????-=943457624a ,计算a 的行列式和逆矩阵。(提示:计算行列式的值的函数是det(x))
8 矩阵??????????=187624323A ,矩阵????
??????=333222111B ;分别求出A ×B 及A 与B 中对应元素之间的乘积.
9 已知:????
??????=987654321a ,分别计算a 的数组平方和矩阵平方. 10 写出计算 sin(30o
)的程序语句.
11 14.305.03.62223-+-+-=x x x x x f ,计算f(2), f(1)f(2)+f 2
(3) 12要求在闭区间[0,2π ]上产生50个等距采样的一维数组。
13. y =sin(x ),x 从0到2π,?x =0.02π,求y 的最大值、最小值、均值和标准差。
14求一阶微分方程2)0(,2
=+='x bt at x 的解。
15.求矩阵AX=b 的解,A 为3阶魔方阵,b 是(3×1)的全1列向量。
16用四舍五入的方法将数组[2.4568 6.3982 3.9375 8.5042]取整。
17将矩阵??????=5724a 、??????=3817b 和??
????=2695c 组合成两个新矩阵: (1)组合成一个4?3的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素,即
?????
???????237912685574 (2)按照a 、b 、c 的列顺序组合成一个行矢量,即
[]296531877254
18 用符号函数法求解方程a t 2+b*t +c=0。
19因式分解:6555234-++-x x x x
20求代数方程组??
???=+=++002y x c by ax 关于x,y 的解。 21对于B AX =,如果??????????=753467294A ,????
??????=282637B ,求解X.
22设
,求. 23 ?++dx x x x ))(1(122. 24 ?+2
13
x x dx . 25求解多项式x 3-7x 2+2x +40的根.
26求解在x =8时多项式(x -1)(x -2) (x -3)(x -4)的值.
<<<<<<精品资料》》》》》 Matlab 上机测试题答案 班级 姓名 学号 要求: (1)请将程序和运行结果粘贴到题目下面,写清楚哪部分是程序,哪部分是运行结果,运行结果包括图形,图形请适当缩小,然后将word 文档传到教育在线,注意保存格式是2003的doc ,文件名”自111_110110_张三” (2)在最开始前请将输入Matlab 命令窗口中输入”diary ”命令,随后在workspace 窗口中可以发现一个名为“diary ”的文件。在老师要求结束练习后,在命令窗口输入”diary off ”命令,然后将文件“diary ”上传到教育在线。 (3)注意题号不要弄乱。 --------------------------------------------------------------------- 1、 矩阵Y= ???? ? ???? ???3472123100451150425 ,给出元素1的全下标和单下标,并用函数练习全下标和单下标的转换,求出元素100的存储位置。取出子矩阵? ? ? ? ??21301,并求该矩阵的维数。 解:命令为: Y=[5,2,4;0,15,1;45,100,23;21,47,3] Y(2,3) Y(10) sub2ind([4 3],2,3) [i,j]=ind2sub([4 3],10) find(Y==100) sub2ind([4 3],3,2) B=Y(2:2:4,3:-2:1) 或 B=Y([2 4],[3 1]) [m n]=size(Y) --------------------------------------------------------------------- 2、已知矩阵A=[1 0 -1 ;2 4 1; -2 0 5],B=[0 -1 0;2 1 3;1 1 2] 求2A+B 、A 2-3B 、A*B 、B*A 、A .*B ,A/B 、A\B 解:命令为: A=[1 0 -1 ;2 4 1; -2 0 5] B=[0 -1 0;2 1 3;1 1 2] E=2*A+B F=A^2-3*B G=A*B H=B*A I=A.*B J=A/B K=A\B --------------------------------------------------------------------- 3、利用函数产生3*4阶单位矩阵和全部元素都为8的4*4阶矩阵,并计算两者的乘积。 解:命令为: A=eye(3,4) B=8*ones(4) C=A*B --------------------------------------------------------------------- 4、创建矩阵a=????? ???????------7023021.5003.120498601 ,取出其前两列构成的矩阵b ,取出前两行构成矩阵c ,转置矩阵b 构成矩阵d ,计算a*b 、c 第1章MATLAB概论 1.1与其他计算机语言相比较,MATLAB语言突出的特点是什么? 答:MATLAB语言有一下特点: 1、起点高。 2、人机界面适合科技人员。 3、强大而简易的作图功能。 4、智能化程度高。 5、功能丰富,可扩展性强。 1.2 MATLAB系统由那些部分组成? 答:MATLAB系统主要由开发环境、MATLAB数学函数库、MMATLAB语言、图形功能和应用程序接口五个部分组成。 1.3 安装MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装? 答:在安装MATLAB时,安装内容由选择组件窗口中各复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装。第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。 1.4 MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上? 答:在MATLAB操作桌面上有五个窗口。在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口。在独立窗口的Desktop菜单中选择Dock...项就可以将独立的窗口重新放置到桌面上。 1.5 如何启动M文件编辑/调试器? 答:在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。 1.6 存储在工作空间中的数组能编辑吗?如何操作? 答:存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。 1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途? 答:命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。 1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别? 答:当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的Set Path菜单项来完成。在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。 1.9 在MATLAB中有几种获得帮助的途径? 答:(1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的MATLAB Help菜单项可以打开帮助浏览器。 (2)help命令:在命令窗口键入“help”命令可以列出帮助主题,键入“help 函数名”可以得到 Matlab 基础练习题 常量、变量、表达式 1、 MATLAB 中,下面哪些变量名是合法的?( ) (A )_num (B )num_ (C )num- (D )-num 2、 在MA TLAB 中,要给出一个复数z 的模,应该使用( )函数。 (A )mod(z) (B )abs(z) (C )double(z) (D )angle(z) 3、 下面属于MATLAB 的预定义特殊变量的是?( ) (A )eps (B )none (C )zero (D )exp 4、 判断:在MA TLAB 的内存工作区中,存放一个英文字符 'a' 需要占用1个字节,存放 一个中文字符‘啊’需要占用2个字节。( 错,都是2个字节 ) 5、 判断:MA TLAB 中,i 和j ( 对 ) 6、 判断:MA TLAB 中,pi 代表圆周率,它等于3.14。( 错,后面还有很多位小数 ) 7、 在MA TLAB 中,若想计算的5 1)3.0sin(21+= πy 值,那么应该在MA TLAB 的指令窗中 输入的MA TLAB 指令是__y1=2*sin(0.3*pi)/(1+sqrt(5))_。 8、 在MA TLAB 中,a = 1,b = i ,则a 占_8__个字节,b 占_16_个字节,c 占________字 节。 9、 在MA TLAB 中,inf 的含义是__无穷大__,nan 的含义是__非数(结果不定)___。 数组 1、 在MA TLAB 中,X 是一个一维数值数组,现在要把数组X 中的所有元素按原来次序 的逆序排列输出,应该使用下面的( )指令。 (A )X[end:1] (B )X[end:-1:1] (C )X (end:-1:1) (D )X(end:1) 2、 在MA TLAB 中,A 是一个字二维数组,要获取A 的行数和列数,应该使用的MATLAB 的命令是( )。 (A )class(A) (B )sizeof(A) (C )size(A) (D )isa(A) 3、 在MATLAB 中,用指令x=1:9生成数组x 。现在要把x 数组的第二和第七个元素都 赋值为0,应该在指令窗中输入( ) (A )x([2 7])=(0 0) (B )x([2,7])=[0,0] (C )x[(2,7)]=[0 0] (D )x[(2 7)]=(0 0) 4、 在MA TLAB 中,依次执行以下指令:clear;A=ones(3,4); A(:)=[-6:5];这时, 若在指令窗中输入指令b=A(:,2)',那么,MATLAB 输出的结果应该是( ) (A )b = -3 -2 -1 (B )b = -2 -1 0 1 (C )b = -5 -1 3 (D )b = -5 -2 1 4 5、 在MA TLAB 中,A = 1:9,现在执行如下指令L1 = ~(A>5),则MATLAB 的执行结果应 该是L1 =___ 1 1 1 1 1 0 0 0 0___。 MATLAB上机习题一 请按以下步骤完成上机实验: 1)在FTP上下载“MATLAB上机习题一.doc”文件,所有习题列在该文件内; 2)在MATLAB中完成所有习题,并将屏幕截图粘贴到相应习题后面; 3)如果习题是问答题,请将答案写在题目后; 4)如果有的习题要求提供脚本文件,请将脚本文件内容拷贝到相应习题后; 5)将文件保存并重命名为“自己的学号-姓名”,例如“20110771-张三.doc”; 6)上传该文件到FTP的相关目录。 1. 运行MATLAB软件,拖放、关闭界面上的子窗口,并恢复到原始试图。 2. 采用鼠标及命令两种方式将桌面添加到MATLAB搜索路径列表的起始及最后位置。 3. 采用鼠标及命令方式将当前工作目录设置为桌面指向的文件夹。 4. 通过使用帮助确定内置变量ispc 的含义。 6. 观察MATLAB中关键字、字符串、注释的字体显示颜色。 5. 创建double类型的变量,并进行计算 1)a=87,b=190,计算a+b、a-b、a*b; 2)创建uint8类型的变量,数值与(1)中相同,进行相同的计算,观察计算结果与预想的是否一致。 6. 计算如下表达式: 1)()sin 60 2)3e 3)3cos 4π?? ??? 4)2 7562323336 +?-?? 7. 设u=2,v=3,计算: 1)4log uv v 2)() 2 2u e v v u +- 3 8. 计算如下表达式: 1)()()3542i i -+ 2)()sin 28i - 9. 判断下面语句的运算结果,并与MATLAB 计算结果做比较: 1)420< 2)420≤ 3)420== 4)4~20= 5)''''b B < 10. 设a=39,b=58,c=3,d=7,判断下面表达式的值与MATLAB 计算结果做比较: 1)a b > 2)a b < 3)&&a b b c >> 4)a d == 5)|a b c > 6)~~d 11. 判断下列变量名哪些是合法的MATLAB 变量: 1)fred 7)fred! 2)book_1 8)book-1 3)2ndplace 9)Second_Place 4)#1 10)No_1 5)vel_5 11)vel.5 6)tan 12)while 提示,可以使用isvarname 对上述变量名进行检验。 12. 编写脚本程序,命名为barbell.m ,完成如下计算: 如图1所示的杠铃, 第1章 MATLAB概论 1.1与其他计算机语言相比较,MATLAB语言突出的特点是什么? MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。 1.2 MATLAB系统由那些部分组成? MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。 1.4 MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上? 在MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。 1.5 如何启动M文件编辑/调试器? 在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。 1.6 存储在工作空间中的数组能编辑吗?如何操作? 存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。 1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途? 页脚内容1 命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。 1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别? 当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的Set Path菜单项来完成。在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。 1.9 在MATLAB中有几种获得帮助的途径? 在MATLAB中有多种获得帮助的途径: (1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的MATLAB Help菜单项可以打开帮助浏览器; (2)help命令:在命令窗口键入“help”命令可以列出帮助主题,键入“help 函数名”可以得到指定函数的在线帮助信息; (3)lookfor命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给定关键词相关的命令和函数 (4)模糊查询:输入命令的前几个字母,然后按Tab键,就可以列出所有以这几个字母开始的命令和函数。 注意:lookfor和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用help命令显示详细信息。 第2章MATLAB矩阵运算基础 页脚内容2 (1)在MATLAB的命令窗口中执行_____命令,将命令窗口的显示内容清空。() A.clear B.clc C.echo off D.cd (2)在MATLAB的命令窗口中执行_____命令,使数据输出显示为十六进制表示。() A.format long B.format rat C.format hex D.format short e (3)下列变量名中_____是合法的。() A.x*y,a,1 B.x\y,a1234 C.end,1 bcx D.char_1,i,j (4)已知x=0:5,则x有_____个元素。() A.5 B.6 C.7 D.8 (5)一下运算符中哪个的优先级最高_____。() A./ B.^ C.~= D.& (6)使用检测函数isnumeric(10)的结果是_____。() A.1 B.0 C.false D.true (7)三维图形中默认视角是_____度。() A.方位角=0 俯仰角=90 B.方位角=90 俯仰角=0 C.方位角=37.5 仰俯角=30 D.方位角=0 仰俯角=180 (8)将符号表达式化简为因式分解因式分解因式分解因式分解形式,使用_____函数。() A.collect B.expand C.horner D.factor (9)运行以下命令,则_____描述是正确的。()>>syms a b c d >>A=[a b;c d] A.A占用的内存小于100B B.创建了5个符号变量 C.A占用的内存是a b c d的总和 D.不存在 (10)已知数组a=[1 2 3;4 5 6;7 8 9],则a(:,end)是指_____元素。 (11)运行命令bitor(8,7)的结果是_____。 (12)运行以下命令: >>x=0:10; >>y1=sin(x); >>y2=5*sin(x); >>y3=[10*sin(x );20*sin(x)]; >>plot(x,y1,x,y2,x,y3) 则在一个图形窗口中,可以看到_____条曲线。 (13)符号表达式“g=sym(sin(a*z)+cos(w*v))”中的自由符号变量是_____。 (14)运行以下命令: >>syms t >>f1=1/t >>limitf1_r=limit(f1,'t','0','right'); 则函数limitf1_r趋向0的右极限为_____。 15.在MATLAB的命令窗口中执行______命令,使数值5.3显示为5.300000000000000e+000 A. format long B. format long e C. format short D. format short e 16.下列变量名中______是合法的。A.char_1,i,j B.1_1, a.1 C.x\y,a1234 D.end,1bcx 17.已知x=0:9,则x有_____个元素。 A.12 B.11 C.10 D.9 18.产生对角线上为全1其余为0的2行3列矩阵的命令是______ A. ones(2,3) B. ones(3,2) C. eye(2,3) D. eye(3,2) 19.已知数组a= [1 2 3 4 5 6 7 8 9] ,则运行a(:,1)=[]命令后______ A. a变成行向量 B. a数组为2行2列 C. a 数组为3行2列 D. a数组中没有元素3 20.按含义选出各个函数名:表示4舍5入到整数的是____,表示向最接近0取整的是____,表示向最接近-∞取整的是____,表示向最接近∞取整的是_____ A. round(x) B. fix(x) C. floor(x) D. ceil(x) 21.已知a=0:5,b=1:6,下面的运算表达式出错的为______ A. a+b B. a./b C. a’*b D. a*b 22.已知s=’显示”hello”’,则s的元素个数是______ A. 12 B. 9 C. 7 D.18 五、某公司投资2000万元建成一条生产线。投产后,在时刻t 的追加成本和追加收益分别为3/225)(t t t G ++=(百万元/年),3/218)(t t H -=(百万元/年)。试确定该生产线在何时停产可获最大利润?最大利润是多少? 提示:利用函数?=T G H t R 0t 20-d ))t (-)t (()((百万元),由于H (t )-G (t )单调 下降,所以H (t )=G (t )时,R (t )取得最大利润。 5.解:构造函数f(t)=H(t)-G(t)=13-t-3t 2/3=0 ; 令t 1/3=x,则f(t)=-t 3-3t 2+13 可得矩阵P=[-1,-3,0,13] 求最佳生产时间的源程序如下: p=[-1,-3,0,13]; x=roots(p); t=x.^3 运行结果如下: t = 3.6768 +21.4316i 3.6768 -21.4316i 4.6465 再分别将t 的三个值带入函数f(t),比较大小后,得到最大利润与最佳生产时间。 求最大利润的程序代码如下: ① t=3.6768 +21.4316i; x=0:0.01:t; y=13-x-3*x.^(2/3); trapz(x,y) 运行结果: ans = 25.2583 ② t=3.6768 -21.4316i; x=0:0.01:t; y=13-x-3*x.^(2/3); trapz(x,y) 运行结果: ans = 25.2583 ③ t=4.6465; x=0:0.01:t; y=13-x-3*x.^(2/3); trapz(x,y) 运行结果: ans = 26.3208 比较以上三组数据,可知最佳生产时间t=4.6465年,可获得的最大利润 26.3208(百万元/年)。 clear; close; fplot('18-t^(2/3)',[0,20]);grid on;hold on; fplot('5+t+2*t^(2/3)',[0,20],'r');hold off; %发现t 约为4 第1章 MATLAB 概论 1.1 与其他计算机语言相比较,MATLAB 语言突出的特点是什么? MATLAB 具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。 1.2 MATLAB 系统由那些部分组成? MATLAB 系统主要由开发环境、MATLAB 数学函数库、MATLAB 语言、图形功能和应用程序接口五个部分组成。 1.4 MATLAB 操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上? 在MATLAB 操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口成为独立窗口的Undock 按钮,点击Undock 按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view 菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。 1.5 如何启动M 文件编辑/调试器? 在操作桌面上选择“建立新文件”或“打开文件”操作时,M 文件编辑/调试器将被启动。在命令窗口中键入edit 命令时也可以启动M 文件编辑/调试器。 1.6 存储在工作空间中的数组能编辑吗?如何操作? 存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。 1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途? 命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M 文件中。 1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别? 当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的Set Path 菜单项来完成。在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB 运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。 1.9 在MATLAB 中有几种获得帮助的途径? 在MATLAB 中有多种获得帮助的途径: (1)帮助浏览器:选择view 菜单中的Help 菜单项或选择Help 菜单中的MATLAB Help 菜单项可以打开帮助浏览器; (2)help 命令:在命令窗口键入“help ” 命令可以列出帮助主题,键入“help 函数名”可以得到指定函数的在线帮助信息; (3)lookfor 命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给定关键词相关的命令和函数 (4)模糊查询:输入命令的前几个字母,然后按T ab 键,就可以列出所有以这几个字母开始的命令和函数。 注意:lookfor 和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用help 命令显示详细信息。 第2章 MATLAB 矩阵运算基础 2.1 在MATLAB 中如何建立矩阵?? ? ???194375,并将其赋予变量a ? >> a=[5 7 3;4 9 1] 2.2 有几种建立矩阵的方法?各有什么优点? 可以用四种方法建立矩阵: ①直接输入法,如a=[2 5 7 3],优点是输入方法方便简捷; ②通过M 文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改; ③由函数建立,如y=sin(x),可以由MATLAB 的内部函数建立一些特殊矩阵; ④通过数据文件建立,该方法可以调用由其他软件产生数据。 2.3 在进行算术运算时,数组运算和矩阵运算各有什么要求? 进行数组运算的两个数组必须有相同的尺寸。进行矩阵运算的两个矩阵必须满足矩阵运算规则,如矩阵a 与b 相乘(a*b ) 1 一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全部水仙花数。 for m=100:999 m1=fix(m/100); %求m的百位数字 m2=rem(fix(m/10),10); %求m的十位数字 m3=rem(m,10); %求m的个位数字 if m==m1*m1*m1+m2*m2*m2+m3*m3*m3 disp(m) end end 2.从键盘输入若干个数,当输入0时结束输入,求这些数的平均值和它们之和。 sum=0; n=0; val=input('Enter a number (end in 0):'); while (val~=0) sum=sum+val; n=n+1; val=input('Enter a number (end in 0):'); end if (n > 0) sum mean=sum/n end 3. 若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6是完数。求[1,500]之间的全部完数。 for m=1:500 s=0; for k=1:m/2 if rem(m,k)==0 s=s+k; end end if m==s disp(m); end end 4. 从键盘上输入数字星期,在屏幕上显示对应英文星期的单词。 function week n=input('input the number:'); if isempty(n) errror('please input !!') end if n>7|n<1 error('n between 1 and 7') end switch n case 1 disp('Monday') case 2 disp('Tuesday') case 3 disp('Wednesday') case 4 disp('Thursday') case 5 disp('Friday') case 6 disp('Saturday') case 7 disp('Sunday') end 5. 某公司销售电脑打印机的价格方案如下: ()如果顾客只买一台打印机,则一台的基本价格为$150。 ()如果顾客购买两台以上打印机,则第二台价格为$120。 ()第三台以后,每台$110。 写一段程序分别计算出购买1--10台打印机所需的钱数。打印机台数可以在程序开始处指定,或通过input命令读入。运行程序,计算出购买10台打印机的总价格。 写出程序,生成分别购买1--10台打印机所需价格的图表(使用fprintf命令输出图表,不允许手算)。 x=input('请输入购买的打印机台数:'); for m=1:x if m<=1 y(m)=150*m; elseif m<=2 y(m)=150+120*(m-1); else y(m)=150+120+110*(m-2); y(1,m)=y(m); end end y(x) plot(1:m,y,'r*--') 【例】水资源系统规划调度常应用系统分析方法处理,以一个水资源分配问题为例,讨论线性规划问题。例:有甲、乙两个水库同时给A、B、C三个城市供水,甲水库的日供水量为28万m3/d,乙水库的日供水量为35万m3/d,三个城市的日需水量分别为A≥10万m3/d,B≥15万m3/d,C≥20 万m3/d。由于水库与各城市的距离不等,输水方式不同,因此单位水费也不同。各单位水费分别为c11=2000元/万m3、c12=3000元/万m3、c13=4000元/万m3、c21=4500元/万m3、c22=3500元/万m3、c23=3000元/万m3。试作出在满足对三个城市供水的情况下,输水费用最小的方案。 设甲水库向三城市日供水量分别为x ll、x12、x13,乙水库向三城市日供水量分别为x2l、x22、x23。 建立约束条件: x11 + x21 ≥10 x12 + x22 ≥15 x13 + x23 ≥20 x11 + x12 + x13 ≤28 x21 + x22 + x23 ≤35 x11,x12,x13,x21,x22,x23,≥0 目标函数: fmin=c11x11+c12x12+c13x13+c21x21+c22x22+c23x23 这样的问题单纯求解是非常繁琐的,而MLTLAB求解是十分简单的,只要在命令行输入: 》f=[0.2 0.3 0.4 0.45 0.35 0.3]’; 》A=[-1 0 0 -1 0 0;0 -1 0 0 -1 0;0 0 -1 0 0 -1;1 1 1 0 0 0; 0 0 0 1 1 1]; 》B=[-10 -15 -20 28 35]; 》lb=zeros(6,1); 》[X,Zmin]=linprog(f,A,B,[],[],lb,[]) 最后得出x=[10 15 0 0 0 20]万m3,Zmin=12.5万元。 1设置matlab 的工作环境,将工作目录设置为d:\work ,添加搜索目录d:\example 2在matlab 的命令窗口里完成如下计算,其中t 的值分别取-1,0,1,表达式如下: 4/3)2 t y e π-= 3自行产生一个5行5列的数组,得到最中间的三行三行矩阵。 4用magic 产生一个5*5的矩阵,将这个矩阵的第二行与第三行互换位置 5求方程组的根 x 1+4x 2-3x 3=2 2x 1+5x 2-x 3=11 x 1+6x 2+x 3=12 6已知:一个多项式的系数向量是p=[1 -6-72 -27],求这个多项式的根。 7已经两个多项式的系数分别是:[1 2 3 4]和[1 4 9 16],请求这两个多项式的乘积,及商和余数。 8给定一个多项式的根是[-5 -3+4i -3-4i],求原来的多项式 9 A=[2 3 4; 1 5 7; 6 2 5] 用什么函数,保证第一列排序的时候,其他列跟着变化。最后的结果是: [1 5 7; 2 3 4; 6 2 5] 10补充题:电路分析 电路分析常常涉及到对方程组的求解,这些方程常常是利用描述电流进入和离开节点的电流方程,或者描述电路中网络回路上的电压的电压方程得出的。下图描述了3个回路电压的方程 方程式如下: 11121222132423432 532()0()()0()0V R I R I I R I I R I R I I R I I R I V -++-=??-++-=??-++=? 假设5个电阻值为已知,2个电压值也为已知,求3个电流值。 11自行产生一个5行5列的数组,用两种方法得到最中间的三行三行矩阵。 12根据a=reshape(-4:4,3,3)做一个矩阵,然后(1)取出所有大于0的元素构成一个向量(可推广到从一个矩阵里筛选出符合条件的元素组成一个向量)(2)将原矩阵中大于0的元素正常显示,而小于等于0的元素全部用0来表示(可推广到将原矩阵中不符合条件的全用0来表示,符合条件的值不变)。(思考:大于0的正常显示,小于等于0的用-10来表示) 13建立如下一个元胞数组,现在要求计算第一个元胞第4行第2列加上第二个元胞+第三个元胞里的第二个元素+最后一个元胞的第二个元素。 a={pascal(4),'hello';17.3500,7:2:100} 14建立一个结构体的数组,包括3个人,字段有姓名,年龄,分数,其中分数由随机函数产生一个3行10列的数据表示了有10门课程,每门课程有三个阶段的分数。问题是: 问题1,如何找到第2个人的分数并显示出来 问题2,如何找到第2个人的每门课程3个阶段的平均分数并显示出来 问题3,全班同学(指这3个学生)的10门课程的每门课程的平均分如何计算出来?要求放到一个数组里。 问题4,找到这个班所有同学的姓名放到一个元胞数组里 15给定一个图像文件,格式是jpg ,通过inportdata 引入这个文件,查看引入后数据保存是一个数组,是100*100*3的一个数组,这是一个三维的数组,表明有100*100个点,每个点有RGB 三个方面决定的。现在,要求将这些点的中间部分30个象素宽度的正方形用黑点表示。 16手动构造一个长宽页是1000*1000*3的图像,每个图像的点有三个0-255之间的随机值构成。然后使用image 函数显示这个图像,再用imwrite 函数保存这个图像,使这个图像用图片浏览器也能够查看。 17给定一个矩阵 a = 1 2 3 4 5 6 编写一个M 函数,要求输入是a ,输出有三个:平均数,标准差,秩。程序运行 习题 1 1. 执行下列指令,观察其运算结果, 理解其意义: (1) [1 2;3 4]+10-2i (2) [1 2; 3 4].*[0.1 0.2; 0.3 0.4] (3) [1 2; 3 4].\[20 10;9 2] (4) [1 2; 3 4].^2 (5) exp([1 2; 3 4]) (6)log([1 10 100]) (7)prod([1 2;3 4]) (8)[a,b]=min([10 20;30 40]) (9)abs([1 2;3 4]-pi) (10) [1 2;3 4]>=[4,3;2 1] (11)find([10 20;30 40]>=[40,30;20 10]) (12) [a,b]=find([10 20;30 40]>=[40,30;20 10]) (提示:a 为行号,b 为列号) (13) all([1 2;3 4]>1) (14) any([1 2;3 4]>1) (15) linspace(3,4,5) (16) A=[1 2;3 4];A(:,2) 2. 执行下列指令,观察其运算结果、变量类型和字节数,理解其意义: (1) clear; a=1,b=num2str(a),c=a>0, a= =b, a= =c, b= =c (2) clear; fun='abs(x)',x=-2,eval(fun),double(fun) 3. 本金K 以每年n 次,每次p %的增值率(n 与p 的乘积为每年增值额的百分比)增加,当增加到rK 时所花费的时间为 ) 01.01ln(ln p n r T += (单位:年) 用MA TLAB 表达式写出该公式并用下列数据计算:r =2, p =0.5, n =12. 4.已知函数f (x )=x 4 -2x 在(-2, 2)内有两个根。取步长h =0.05, 通过计算函数值求得函数的最小值点和两个根的近似解。(提示:求近似根等价于求函数绝对值的最小值点) ? 5. (1) 用z=magic(10)得到10阶魔方矩阵; (2) 求z 的各列元素之和; (3) 求z 的对角线元素之和(提示:先用diag(z)提取z 的对角线); (4) 将z 的第二列除以3; 1、标点符号;可以使命令行不显示运算结果,%用来表示该行为注释行。 2、x为0~4pi,步长为0.1pi的向量,使用命令x=0:0.1*pi:4*pi创建。4、输入矩阵A= 错误!未找到引用源。 ,使用全下标方式用A(2,2)取出元素 “-5”,使用单下标方式用A(5)取出元素“-5”。 5、符号表达式sin(2*a+t)+m中独立的符号变量为t。 6、M脚本文件和M函数文件的主要区别是M脚本文件没有函数定义和M函数文件有函数定义。 7. 设x是一维数组,x的倒数第3个元素表示为 ______x(_end-2_)________________;要在x的第36和37个元素之间插入一个元素154,使用的命令(集)为_x=x(_1:36,[154],37:end)_;设y为二维数组,要删除y 的第34行和48列,可使用命令_y(34,:)=[];y(:,48)=[]_; 8. 将变量x以Ascii文本格式存储到文件fname.txt,应使用命令__save _x_;将Excel文件data.xls读入WorkSpace并赋值给变量x,可使用命令 _x=xlsread('data.xls')_; 9. 在while表达式,语句体,End 循环语句中,表达式的值__非零__时表示循环 条件为真,语句体将被执行,否则跳出该循环语句; 10. 打开Matlab的一个程序文件fname.m,以添加的方式进行读写,应当使用命 令_fid= fopen('fname.m','w+'); 11.要从键盘读入一个字符串并赋值给变量x,且给出提示“Who is she?”,应使用命令__x=input(…Who is she??,?s?)_;使用fprintf()函数以含有2位小数的6位浮点格式输出数值变量weight到文件wt.txt,使用的命令(集)为fid = fopen(…wt.txt?,??,_); fprintf () ;12.设A= 错误!未找到引用源。,和B= 错误!未找到引用源。 和 C=错误!未找到引用源。均为m*n矩阵,且存在于WorkSpace中,要产生矩阵D= 习题: 1, 计算?? ????=572396a 与??? ???=864142b 的数组乘积。 2, 对于B AX =,如果???? ? ?????=753467294A ,??????????=282637B ,求解X 。 3, 已知:?? ?? ? ?????=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。 4, 角度[]604530=x ,求x 的正弦、余弦、正切和余切。(应用sin,cos,tan.cot) 5, 将矩阵?? ?? ??=7524a 、??????=3817b 和??? ???=2695c 组合成两个新矩阵: (1)组合成一个4?3的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素,即 ?? ??? ???? ???237 912685 574 (2)按照a 、b 、c 的列顺序组合成一个行矢量,即 []296531877254 6, 将(x -6)(x -3)(x -8)展开为系数多项式的形式。(应用poly,polyvalm) 7, 求解多项式x 3-7x 2+2x +40的根。(应用roots) 8, 求解在x =8时多项式(x -1)(x -2) (x -3)(x -4)的值。(应用poly,polyvalm) 9, 计算多项式9514124234++--x x x x 的微分和积分。(应用polyder,polyint ,poly2sym) 10, 解方程组???? ? ?????=??????????66136221143092x 。(应用x=a\b) 11, 求欠定方程组?? ? ???=???? ??5865394742x 的最小范数解。(应用pinv) 12, 矩阵???? ? ?????-=943457624a ,计算a 的行列式和逆矩阵。(应用det,inv) 13, y =sin(x ),x 从0到2π,?x =0.02π,求y 的最大值、最小值、均值和标准差。(应用max,min,mean,std) 14, 参照课件中例题的方法,计算表达式() 2 2 e 1053y x y x z ---=的梯度并绘图。(应用meshgrid, gradient, contour, hold on, quiver) 15, 用符号函数法求解方程a t 2+b*t +c=0。(应用solve) 16, 用符号计算验证三角等式:(应用syms,simple) 17, 求矩阵?? ? ? ??=2221 1211a a a a A 的行列式值、逆和特征根。(应用syms,det,inv,eig) 18, 因式分解:6555234-++-x x x x (应用syms, factor) 19, ? ??? ?? ?? =)sin()log(12 x x e x x a f ax ,用符号微分求df/dx 。(应用syms,diff) 20, 符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t 的变化范围为[0,2π]。(应用syms,ezplot) 21, 绘制曲线13++=x x y ,x 的取值范围为[-5,5]。(应用plot) 22, 有一组测量数据满足-at e =y ,t 的变化范围为0~10,用不同的线型和标记点画出a=0.1、a=0.2和a=0.5三种情况下的曲线,在图中添加标题-at e =y ,并用箭头线标识出各曲线a 的取值,并添加标题-at e =y 和图例框。(应用plot,title,text,legend) 23 24, x= [66 49 71 56 38],绘制饼图,并将第五个切块分离出来。 matlab练习题和答案 控制系统仿真实验 Matlab 部分实验结果 目录 实验一MATLAB基本操作..................................................................... .......................1 实验二Matlab 编程..................................................................... ...............................5 实验三Matlab 底层图形控制..................................................................... .....................6 实验四控制系统古典分析...................................................................... .......................12 实验五控制系统现代分析..................................................................... . (15) 实验六PID 控制器的设计..................................................................... ......................19 实验七系统状态空间设计...................................................................... .......................23 实验九直流双闭环调速系统仿真..................................................................... . (25) 实验一MATLAB基本操作matlab练习题及答案
matlab基础练习题带答案
MATLAB上机习题一
matlab经典习题及解答
MATLAB上机考试题(一)
matlab例题
matlab经典编辑习题集及解答
Matlab 上机题及答案
matlab典型例题
MATLAB上机题汇总(基本题,抽3题)合肥学院
Matlab习题
matlab习题
MATLAB习题及参考答案经典.doc
matlab练习题和答案