MATLAB概论习题及答案.pdf

上传人:文*** 文档编号:88927138 上传时间:2023-05-04 格式:PDF 页数:66 大小:5.52MB
返回 下载 相关 举报
MATLAB概论习题及答案.pdf_第1页
第1页 / 共66页
MATLAB概论习题及答案.pdf_第2页
第2页 / 共66页
点击查看更多>>
资源描述

《MATLAB概论习题及答案.pdf》由会员分享,可在线阅读,更多相关《MATLAB概论习题及答案.pdf(66页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第1章MATLAB概论1.1 与其他计算机语言相比较,MATLAB语言突出的特点是什么?MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。1.2 MATLAB系统由那些部分组成?MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。1.3 安 装 MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装MATLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即 MATLAB选 项)必须安装。第一次安装没有选择的内容在补安装时只需按照

2、安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。1.4 MATLAB操作桌面有儿个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?在 MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击 Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择D ock菜单项就可以将独立的窗口重新防止的桌面上。1.5 如何启动M 文件编辑/调试器?在操作桌面上选择“建立新文件”或“打开文件”操作时,M 文件编辑/调试器将被启动。在命令窗口

3、中键入edit命令时也可以启动M 文件编辑/调试器。1.6 存储在工作空间中的数组能编辑吗?如何操作?存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M 文件中。1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别?当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可

4、以通过选择操作桌面的file菜单中的Set Path菜单项来完成。在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。1.9 在 MATLAB中有几种获得帮助的途径?在 MATLAB中有多种获得帮助的途径:(1)帮助浏览器:选 择 view 菜 单 中 的 H elp菜单项或选择H elp 菜单中的MATLAB Help菜单项可以打开帮助浏览器;(2)help命令:在命令窗口键入“help”命令可以列出帮助主题,键 入“help函数名”

5、可以得到指定函数的在线帮助信息;(3)lookfor命令:在命令窗口键入lookfor关键词”可以搜索出一系列与给定关键词相关的命令和函数(4)模糊查询:输入命令的前几个字母,然后按Tab键,就可以列出所有以这几个字母开始的命令和函数。注意:lookfor和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用help命令显示详细信息。第 2 章 MATLAB矩阵运算基础2.1 在 MATLAB中如何建立矩阵。7 3L并将其赋予变量a?4 9 1 a=5 7 3;4 9 12.2 有儿种建立矩阵的方法?各有什么优点?可以用四种方法建立矩阵:直接输入法,如 a=2 5 7 3 ,优点是输

6、入方法方便简捷;通过M 文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改;由函数建立,如丫=$也仪),可以由MATLAB的内部函数建立一些特殊矩阵;通过数据文件建立,该方法可以调用由其他软件产生数据。2.3 在进行算术运算时,数组运算和矩阵运算各有什么要求?进行数组运算的两个数组必须有相同的尺寸。进行矩阵运算的两个矩阵必须满足矩阵运算规则,如矩阵a与b相 乘(a*b)时必须满足a的列数等于b的行数。2.4 数组运算和矩阵运算的运算符有什么区别?在加、减运算时数组运算与矩阵运算的运算符相同,乘、除和乘方运算时,在矩阵运算的运算符前加一个点即为数组运算,如a*b为矩阵乘,a.*b为数组乘

7、。52.5 计算矩阵373 51 29 8J 184 27 9之和。3 67 4与6 a=5 3 5;3 7 4;7 9 8;b=2 4 2;6 7 9;8 3 6;a+bans=7 7 79 14 1315 12 142.6求=4+8i3+2i3+5i 2-7i l+4i7-6i 9+4i 3-9i了 的 共 辗 转 置。x=4+8i 3+5i 2-7i l+4i 7-5i;3+2i 7-6i 9+4i 3-9i 4+4i;xans=4.0000-8.0000i3.0000-5.0000i3.0000-2.0000i7.0000+6.0000i2.0000+7.0000i 9.0000-4.

8、0000i1.0000-4.0000i 3.0000+9.0000i7.0000+5.0000i 4.0000-4.0000i2.7计算9 3与4 I 的数组乘积。2 7 5j 4 6 8 a=6 9 3;2 7 5;b=2 4 1;4 6 8;a.*bans=12 36 38 42 402.8“左除”与“右除”有什么区别?在通常情况下,左除x=ab是 a*x=b的解,右除x=b/a是 x*a=b的解,一般情况下,abwb/a。-4 9 22.9对于AX=8,如果A=7 6 4,B=26,求解X。3 5 728 A=4 9 2;7 6 4;3 5 7;B=37 26 28;X=ABX=-0.5

9、1184.04271.33181 2 32.1 0 已知:”4 5 6,分别计算a的数组平方和矩阵平方,并观察其结果。7 8 9 a=12 3;4 5 6;7 8 9;a.A2ans=1 4 916 25 3649 64 81 aA2ans=3036426681961021261502.11 =P J 5 ,J 8 -7 41观察q与8之间的六种关系运算的结果。3 6-4 j 3 6 2 a=12 3;4 5 6;b=8-7 4;3 6 2;abans=0 1 0101 a=bans=0 1 01 0 1 abans=1 0 10 1 0 a v,d=eig(a,b)v=-0.4330-0.2

10、543-0.1744-0.56570.9660-0.6091-0.70180.04720.773613.54820004.83030003.6216 a=9 1 2;5 6 3;8 2 7;u,s,v=5vd(a)u=-0.5601-0.4762-0.67790.5320-0.83400.1462-0.6350-0.27880.7204r15.52340004.56480003.3446v=-0.82 7 50.3917-0.4 0 2 3-0.307 5-0.9156-0.2592-0.4 6 9 9-0.0 9 0 70.8781 1,u=1u(a)1=1.0000000.55561.00

11、0000.88890.20411.0000u=9.00001.00002.000005.44441.8889004.8367 q,r=q r(a)q=-0.69 0 30.3969-0.6 0 5 0-0.38 3 5-0.9097-0.1592-0.6 1 3 60.12210.7801-13.0384-4.2 1 8 3 -6.82600-4.8172-1.08073.7733 c=chol(a)3.00000.33330.66672.42671.14472.2903472.17将矩阵组合成两个新矩阵:(1)组合成一个4x3的矩阵,第一列为按列顺序排列的a矩阵元素,第二列为按列顺序排列的b

12、矩阵元素,第三列为按列顺序排列的c矩阵元素,即4 7 55 8 62 1 97 3 2(2)按 照a、b、C的列顺序组合成一个行矢量,即4 527 7 8 1 3 5 6 9 2 a=4 2;5 7;b=7 1;8 3;c=5 9;6 2;%(1)d=a(:)b(:)c(1)d=4 7 55862 1 97 3 2%(2)e=a(:);b(:);c(:)e=452778 1 35692或利用(1)中产生的d e=reshape(d,l,12)ans=452778135692第3章 数值计算基础3.1 将(x-6)(x-3)(九-8)展开为系数多项式的形式。a=6 3 8;pa=poly(a);

13、ppa=poly2sym(pa)ppa=xA3-17*xA2+90*x-1443.2 求解多项式X 3_7,+2x+4o的根。r=l-7 2 40;p=roots(r);-0.21510.44590.79490.27073.3 求解在x=8时多项式(九-1)(尤-2)(%-3)(x-4)的值。p=poly(1 2 3 4);polyvalm(p,8)ans=8403.4 计算多项式乘法(*+2+2)(/+5%+4)。c=conv(l 2 2,1 5 4J)c=1 7 16 18 83.5 计算多项式除法(3d+13d+6x+8)/a+4)。d=deconv(3 13 6 8,1 4)d 二3

14、1 23.6 对下式进行部分分式展开:3%4+2x3+5x2+4x+6x5+3x4+4X3+2X2+7X+2 a=l 3 42 7 2;b=3 2 5 46;r,s,k=residue(b,a)1.1274+1.1513i1.1274-1.1513i-0.0232-0.0722i-0.0232+0.0722i0.7916s=-1.7680+1.2673i-1.7680-1.2673i0.4176+1.1130i0.4176-1.1130i-0.2991k=3.7 计算多项式4x2x3-14x2+5x+9的微分和积分。p=4-12-14 5;pder=polyder(p);pders=poly2

15、sym(pder)pint=polyint(p);pints=poly2sym(pint)pders=12*xA2-24*x-14pints=XA4-4*XA3-7*XA2+5*X2 93.8 解方程组3 42 2011 x=61366 a=2 9 0;3 4 11;226J;b=13 6 6,;x=ab7.4000-0.2000-1.40003.9 求欠定方程组?::1=丹的最小范数解。9 3 5 6J 5 a=2 4 7 4;9 3 5 6;b=8 5;x=pinv(a)*b-0.21510.44590.79490.27073.10 有一组测量数据如下表所示,数据具有y=f的变化趋势,用最

16、小二乘法求解y。Xi1.522.533.544.55y-1.42.735.98.412.216.618.826.2 x=l 1.5 2 2.5 3 3.5 4 4.5 5 y=-1.4 2.7 3 5.9 8.4 12.2 16.6 18.8 26.2 e=ones(size(x)x.A2 c=ey xl=l:0.1:5,;y 1=ones(size(x 1),x 1.A2*c;plot(x,y,ro,xl,yl,k)4 2-63.1 1 矩阵a=7 5 4,计算a的行列式和逆矩阵。3 4 9 a=4 2-6;7 5 4;3 4 9;ad=det(a)ai=inv(a)ad=-64ai=-0.

17、45310.6562-0.59370.7969-0.84370.9062-0.20310.1562-0.09373.12 y=sin(%),x从0至2n,Ax=0.02兀,求y的最大值、最小值、均值和标准差。x=0:0.02*pi:2*pi;y=sin(x);ymax=max(y)ymin=min(y)ymean=mean(y)ystd=std(y)ymax=1ymin=-1ymean=2.2995e-017ystd=0.70713.13 x=l 2 3 4 5,y=2 4 6 8 1 0 ,计算X的协方差、y 的协方差、X与y 的互协方差。x=l 2 3 45;y=2 4 6 8 10;cx

18、=cov(x)cy=cov(y)cxy=cov(x,y)ex=2.5000cy=10exy=2.5000 5.00005.0000 10.00003.14 参照例3-20的方法,计算表达式z=的梯度并绘图。v=2:0.2:2;x,y=meshgrid(v);z=10*(x.A3-y.A5).*exp(-x.A2-y.A2);px,py=gradient(z,.2,.2);contour(x,y,z)hold on quiver(x,y,px,py)hold off3.15有一正弦衰减数据y=sin(x).*exp(-x/10),其中x=0:pi/5:4*pi,用三次样条法进行插值。x0=0:p

19、i/5:4*pi;yO=sin(xO).*exp(-x0/10);x=0:pi/20:4*pi;y=spline(xO,yO,x);plot(xO,y0,or,x,y,b )第 4 章 符号数学基础4.1 创建符号变量有儿种方法?MATLAB提供了两种创建符号变量和表达式的函数:sym和 syms。sym用于创建一个符号变量或表达式,用法如xusymCx5)及 f=sym(tx+y+z,),syms用于创建多个符号变量,用法如sym sxyz。f=sym(x+y+z)相当于syms x y zf=x+y+z4.2 下面三种表示方法有什么不同的含义?(1)f=3*x+5*x+2(2)f=3*xA

20、2+5*x+2(3)x=sym(x)f=3*x2+5*x+2(1)f=3*x2+5*x+2表示在给定x 时,将 3*x+5*x+2的数值运算结果赋值给变量f,如果没有给定 x 则指示错误信息。(2)f=3*xA2+5*x+2表示将字符串3*xA2+5*x+2赋值给字符变量f,没有任何计算含义,因此也不对字符串中的内容做任何分析。(3)x=sym(x)f=3*xA2+5*x+2表示x是一个符号变量,因此算式f=3*x+5*x+2就具有了符号函数的意义,f也自然成为符号变量了。4.3 用符号函数法求解方程a+b*f+c=O。r=solve(a*tA2+b*t+c=0,t)r=l/2/a*(-b+(

21、bA2-4*a*c)A(l/2)l/2/a*(-b-(bA2-4*a*c)A(l/2)4.4 用符号计算验证三角等式:sin(p)cos()-cos(p)sin(pi)=sin(r6)syms phil phi2;y=simple(sin(phi 1 )*cos(phi2)-cos(phi l)*sin(phi2)y=sin(phil-phi2)4.5 求矩阵AM的行列式值、逆和特征根。_a2 a22_syms all al2 a21 a22;A=all,al2;a21,a22AD=det(A)%行列式AI=inv(A)%逆AE=eig(A)%特征值A=all,al2 a21,a22AD=al

22、l*a22-al2*a21AI=-a22/(-all*a22+al2*a21),al2/(-all*a22+al2*a21)a21/(-all*a22+al2*a21),-all/(-al l*a22+al2*a21)AE=l/2*all+l/2*a22+l/2*(allA2-2*all*a22+a22人2+4*al2*a21)Nl/2)l/2*a 11+l/2*a22-l/2*(a 11 A2-2*a 11*a22+a22A2+4*a 12*a2l)A(l/2)4.6 因式分解:X4-5X3+5X2+5X-6 syms x;f=xA4-5*xA3+5*xA2+5*x-6;factor(f)a

23、ns=(x-l)*(x-2)*(x-3)*(x+l)7 14.7 J-7,用符号微分求df/dx。eax log(x)sin(x)syms a x;f=a,xA2,1/x;exp(a*x),log(x),sin(x);df=diff(f)df=0,2*x,-l/xA2 a*exp(a*x),1/x,cos(x)4.8求 代 数 方 程 组 关 于x,y的解。S=solve(a*xA2+b*y+c=0,b*x+c=0,x,y,);disp(S.x=),disp(S.x)disp(S.y=),disp(S.y)S.x=-c/bS.y=-c*(a*c+bA2)/bA34.9符号函数绘图法绘制函数x=

24、sin(3t)cos(t),y=sin(3t)sin(t)的图形,t的变化范围为0,2汨。syms t ezplot(sin(3*t)*cos(t),sin(3*t)*sin(t),0,pi)x-sn(31)cos(t).y=sin(31)sin(r)4.10绘制极坐标下sin(3*t)*cos(t)的图形。syms t ezpolar(sin(3*t)*cos(t)第 5 章基本图形处理功能5.1 绘制曲线y=l+x+l,X的取值范围为-5,5。x=-5:0.2:5;y=x.A3+x+l;plot(x,y)1505.2 有一组测量数据满足),=e*t 的变化范围为。1 0,用不同的线型和标记

25、点1S1出a=0.1、a=0.2和 a=0.5三种情况下的曲线。t=0:0.5:10;yl=exp(-0.1*t);y2=exp(-0.2*t);y3=exp(-0.5*t);plot(t,yl,-ob,t,y2,:*r,t,y3,-.Ag)5.3 在5.1题结果图中添加标题y=e,并用箭头线标识出各曲线a 的取值。title(ityrm=eA-itat)title(ityrm=eA-itat,FontSize,12)text(t(6),yl(6),leftarrowitarm=0.r,FontSize,11)text(t(6),y2(6),leftarrowitarm=0.2,FontSiz

26、e,11)text(t(6),y3(6),leftarrowitarm=0.5,FontSize,11)5.4 在5.1题结果图中添加标题y=”和图例框。title(ityrm=eA-itat,FontSize,12)legend(a=0.1 ,a=0.2,a=05)5.5 表中列出了 4个观测点的6次测量数据,将数据绘制成为分组形式和堆叠形式的条形图。第1次第2次第3次第4次第5次第6次观测367428点1观测八占、2一673247观测点3972584观测点4643274 y=3 6 9 6;6 7 7 4;7 3 2 3;4 2 5 2;2 4 8 7;8 7 4 4;bar(y)bar(

27、y,stack)3 4 5 65.6 x=66 49 71 56 3 8,绘制饼图,并将第五个切块分离出来。x=66 49 71 56 38;L=0000 1;pie(x,L)14%20%25%5.7 z=x e/T,当x和y的取值范围均为-2到2时-,用建立子窗口的方法在同一个图形窗口中绘制出三维线图、网线图、表面图和带渲染效果的表面图。x,yJ=meshgrid(-2:.2:2);z=x.*exp(-x.A2-y.A2);mesh(x,y,z)subplot(2,2,l),plot3(x,y,z)title(plot3(x,y,z)subplot(2,2,2),mesh(x,y,z)tit

28、le(mesh(x,y,z)subplot(2,2,3),surf(x,y,z)title(surf(x,y,z)subplot(2,2,4),surf(x,y,z),shading interp title(surf(x,y,z),shading interp)0.5-0-0.5-2plot3(x.y,z)surf(x,y,z)5o52o.-O.5o52o,-O.5.8绘 制peaks函数的表面图,用colormap函数改变预置的色图,观察色彩的分布情况。surf(peaks(30);colormap(hot)colormap(cool)colormap(lines)5.9 用 sphere

29、函数产生球表面坐标,绘制不通明网线图、透明网线图、表面图和带剪孔的表面图。x,y,z=sphere(30);mesh(x,y,z)mesh(x,y,z),hidden off surf(x,y,z)z(18:30,1:5)=NaN*ones(13,5);surf(x,y,z)5.10将 5.9题中的带剪孔的球形表面图的坐标改变为正方形,以使球面看起来是圆的而不是椭圆的,然后关闭坐标轴的显示。axis squareaxis off第 6 章 高级图形处理功能6.1 轴对象是使用的最多的图形对象之一,那么轴对象是哪个对象的子对象,又是那些对象的父对象?轴对象是图形窗口对象的子对象,是图像、灯光、线

30、、块、矩形、表面、字的父对象。6.2 什么是图形句柄?图形句柄有什么用途?图形句柄是每个图形对象从产生时起就被赋予的一个唯一的标识。利用图形句柄既可以操纵一个已经存在的图形对象的属性,也可以在建立图形对象时指定属性的值,特别是对指定对象句柄的操作不会影响同时存在的其他对象,这是非常有用的。6.3 如何设置和获取指定句柄对象的属性值?一图形窗口对象的句柄为h,先查询该窗口对象可以设置的各种属性,再将窗口的灰色背景设置为白色背景。(1)利 用set(句柄,属性名称,属性值)语句可以设置指定对象的属性,get(句柄,属性名称)语句可以获得指定对象的属性。(2)set(h)AlphamapBackin

31、gStore:on I offCloseRequestFcn:string-or-function handle-or-cell arrayColorColormapCurrentAxesCurrentCharacterCurrentobject从列出的属性内容可以看到,设置背景颜色的属性名为C olor,因此 set(h,color,w,)即可将图形窗口的背景色改为白色。6.4 已知三维图形视角的缺省值是方位角为-37.5,仰角为30,将观察点顺时针旋转20。角的命令是什么?view(-57.5,30)6.5 画一双峰曲面(peaks)图,加灯光light,改变光源的位置观察图形的变化。su

32、rf(peaks)shading interp lighting phong light(Position,-3-2 1);light(Position,-l 0 1);6.6 在双峰曲面上改变不同的光照模式,观察效果。surf(peaks)shading interplightCPosition-S-2 1J);lighting flat lighting gouraud lighting phong lighting noneto6.7用subplot语句在一个图形窗口上开多个大小不等的子窗口进行绘图并添加注释,见图。subplot(position,0.1,0.15,0.3,0.65)h

33、ist(randn(1,1000),20);xlabel(,直方图)subplot(position,0.45,0.52,0.25,0.28)xp,yp,zp=peaks;contour(xp,yp,zp,15,k)hold on pcolor(xp,yp,zp)shading interp hold off axis off text(-L2,-4;伪彩色图)subplot(position,0.72,0.5,0.25,0.3)sphere(25);axis equal,axis(-0.75,0.75,-0.75,0.75,-0.75,0.75)light(Position,l 3 2);l

34、ight(Position,-3-1 3J);material shiny axis off text(-0.8,-0.7,-l,三维图)subplot(position,0.45,0.15,0.5,0.25)t=0:pi/15:pi;y=sin(4*t).*sin(t)/2;plot(t,y,-bs,LineWidth,2,.MarkerEdgeColor,k,.MarkerFaceColor,y,.MarkerSize,5)axis(0,3.14,-0.5,0.5)xlabelC带标记点的线图,)%设置线型%设置标记点边缘颜色%设置标记点填充颜色 subplot(position,0.1,

35、0.9,0.8,0.1 )text(0.25Q2,多窗口绘图示例 fontsize,25,fontname,隶 书color,、)axis off6.8用c,hc=contour(peaks(30)语句绘制双峰曲面的等高线图,通过控制图形句柄的方法将第四条等高线加粗为2磅,将第六条等高线表示为虚线,在第十条等高线上加星号标记 c,hc=contour(peaks(30);set(hc(4),linewidth,2)set(hc(6),edgecolor,1,0.8,0,linestyle,:)set(hc(10),marker,*)6.9做一个花瓶,如图示。(提示:做一个旋转体表面,调入一幅图

36、像对该表面进行彩绘,即用图像的色图索引作为表面体的色图索弓I)t=(0:20)/20;r=sin(2*pi*t)+2;x,y,z=cylinder(r,40);cx=imread(flowers.tif);%产生旋转体表面的三维数据%读取名为flowers.ti f 的图象文件 c,map=rgb2ind(cx,256);%真彩色图转换为索引图(若读入的是索引图,不需转换)cl=double(c)+l;%把 unit8编址图象数据变换为双精度格式 surface(x,y,z,Cdata,flipud(c 1 ),FaceColor,texturemap,.EdgeColor,none,CDat

37、aMapping,direct,Ambient,.0.6,diffuse,0.8,speculars,0.9)%通过属性设置,进行彩绘。colormap(map)%使用图象的色图 view(-50,10)axis off6.1 0 用图形窗口功能在图形窗口中的任意位置产生多个大小不等的子窗口,与 6.7题结果进行比较。提示:(1)使 用 figure命令创建一个新的图形窗口;(2)在图形窗口的Insert菜单中选择Axes项,鼠标指针由箭头变为十字,按下鼠标左键在图形窗口的任意位置拖曳创建一个坐标轴对象;(3)重复 2 创建其他坐标轴对象。6.1 1 利用图形窗口的曲线拟合工具,选择不同的拟合

38、方法对给定的数据y=9,18,21,19,22,25,20,14,12,0进行曲线拟合,观察不同的拟合效果。提示:(1)使 用 plot函数绘图;(2)在图形窗口的Tools菜单中选择Basic Fitting项,打开曲线拟合工具;(3)选择合适的拟合方法。第 7 章 GUI程序设计7.1 GUI开发环境中提供了哪些方便的工具?各有什么用途?在 GUI开发环境中提供了下列五个方便的工具:(1)布局编辑器(Layout Editor)一在图形窗口中创建及布置图形对象(2)几何排列工具(Alignment Tool)一调整各对象之间的相互几何关系和位(3)属性编辑器(Property Inspec

39、tor)一查询并设置对象的属性值(4)对象浏览器(Object Browser)一获得当前MATLAB窗口中图形对象句柄的分级排列(5)菜单编辑器(Menu Editor)一建立和编辑主菜单和图形对象的鼠标右键菜单7.2 做一个带按钮的界面,当按动按钮时,在计算机声卡中播放一段音乐。(提示,找一个.wav文件,简单起见可以在windows目录下找一个文件,将其放在当前工作目录下或搜索路径上,当按动“开始”按钮时调入该文件并播放,发声功能由sound函数完成,具体用法请查阅帮助信息)简单声音播放器开始带放(1)先建立一个静态文本对象作为界面的标题“简单声音播放器”(2)建立一个按钮对象用于启动播

40、放器,callback函数中的内容为y,f,b=wavread(loff);%读入声音文件 loff.wavsound(y,f,b)%由声卡播放声音(3)再建立一个用于关闭界面的按钮对象,callback函数中的内容为close(gcbf)7.3 做一个滑条(滚动条)界面,图形窗口标题设置为GUI Demo:S lid er,并关闭图形窗口的菜单条。功能:通过移动中间的滑块选择不同的取值并显示在数字框中,如果在数字框中输入指定范围内的数字,滑块将移动到相应的位置,见下图。|20-50 J J J 50提示:(1)在 figure的属性浏览器中设置Name为 GUI Demo:Slider(2)

41、先建立一个滑条对象,在属性浏览器中设置M ax为 50,M in为-50;(3)在滑条的两端各放置一个静态文本用于显示最大值和最小值;(4)滑条对象的callback函数中的内容为:val=get(handles.slideri,value);set(handles.edit 1,string,num2str(val);(5)在滑条上方放置一个文本框,用于显示滑块的位置所指示的数值,也可以在文本框中直接输入数值,callback函数中的内容为:str=get(handles.edit 1,string);set(handles.slideri,value,str2num(str);7.4 用单

42、选框做一个如图所示的界面,通过选择不同的单选框来决定使用不同的色彩图。W彩(1)建立坐标轴对象,用于显示图形;(2)建立建立五个单选框,用于选择不同的色图;(3)callback函数的内容为:function varargout=radiobutton 1 _Callback(h,eventdata,handles,varargin)set(handles.radiobutton 1 ,value,l)set(handles.radiobutton2,value,0)set(handles.radiobutton3value,0)set(handles.radiobutton4,value,0

43、)set(handles.radiobutton5,value,0)colormap(jet)%-function varargout=radiobutton2_Callback(h,eventdata,handles,varargin)set(handles.radiobutton 1,value,0)set(handles.radiobutton2,value,1)set(handles.radiobutton3,value,0)set(handles.radiobutton4,value,0)set(handles.radiobutton5,value,0)colormap(hsv)%-

44、function varargout=radiobutton3_Callback(h,eventdata,handles,varargin)set(handles.radiobuttonl,value,0)set(handles.radiobutton2,value,0)set(handles.radiobutton3,value,1)set(handles.radiobutton4,value,0)set(handles.radiobutton5,value,0)colormap(hot)%-function varargout=radiobutton4_Callback(h,eventda

45、ta,handles,varargin)set(handles.radiobuttonl,value,0)set(handles.radiobutton2,value,0)set(handles.radiobutton3,value,0)set(handles.radiobutton4,value,1)set(handles.radiobutton5,value,0)colormap(pink)%-function varargout=radiobutton5_Callback(h,eventdata,handles,varargin)set(handles.radiobuttonl,valu

46、e,0)set(handles.radiobutton2,value,0)set(handles.radiobutton3,value,0)set(handles.radiobutton4,value,0)set(handles.radiobutton5,value,l)colormap(copper)7.5制作一个曲面光照效果的演示界面,如图所示,三个弹出式菜单分别用于选择曲面形式、色彩图、光照模式和反射模式,三个滚动条用于确定光源的位置,一个按钮用于退出演示。提示:(1)建立一个静态文本,用于显示界面的标题:光照效果演示;(2)建立坐标轴对象,用于显示图形;(3)建立四个下拉菜单,分别用于

47、选择绘图表面的形状、色图、光照模式和反射模式,每个下拉菜单的上方都有一个静态文本用于说明菜单的作用;(4)在一 个frame上建立三个滑条用于确定光源的位置,并 在frame上方加一说明;(5)建立一个按钮用于退出演示;(6)callback函数的内容为:function varargout=pushbutton l_CaIIback(h,eventdata,handles,varargin)delete(handles.figure 1)%-function varargout=popupmenul_Callback(h,eventdata,handles,varargin)val=get(

48、h,value);switch valcase 1surf(peaks);case 2sphere(30);case 3membranecase 4x,y=meshgrid(-4:,1:4);r=sqrt(x.A2+y.A2)+eps;z=sinc(r);surf(x,y,z)case 5x,y=meshgrid(-l.5:3:1.5,-1:0.2:1);z=sqrt(4-x.A2/9-y.A2/4);surf(x,y,z);case 6t=0:pi/12:3*pi;r=abs(exp(-t/4).*sin(t);x,y,z=cylinder(r,30);surf(x,y,z);endshad

49、ing interplight(Position,-3-2 1);axis off%-function varargout=radiobuttonl_Callback(h,eventdata,handles,varargin)set(h,value,1)set(handles.radiobutton2,value,0)set(handles.radiobutton3,value,0)set(handles.radiobutton4,value,0)lighting flat%-function varargout=radiobutton2_Callback(h,eventdata,handle

50、s,varargin)set(h,value,l)set(handles.radiobuttonl,value,0)set(handles.radiobutton3,value,0)set(handles.radiobutton4,value,0)lighting gouraud%-function varargout=radiobutton3_Callback(h,eventdata,handles,varargin)set(h,value,l)set(handles.radiobuttonl,value,0)set(handles.radiobutton2,value,0)set(hand

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁