专题资料(2021-2022年)matlab大作业.doc
2014 年春季学期MATLAB 课程考查题一一.必答题必答题(80 分分)1.如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有何区别?径上的文件有何区别?(2)答答:方法一:在 MATLAB 命令窗口中输入 editpath 或 pathtool 命令或通过【File】/【SetPath】菜单,进入“设置搜索路径”对话框,通过该对话框编辑搜索路径。方法二:在命令窗口执行“path(path,D:Study)”,然后通过“设置搜索路径”对话查看“D:Study”是否在搜索路径中。方法三:在命令窗口执行“addpathD:Study-end”,将新的目录加到整个搜索路径的末尾。如果将 end 改为 begin,可以将新的目录加到整个搜索路径的开始。区别:当前文件目录是正在运行的文件的目录,显示文件及文件夹的详细信息,且只有将文件设置为当前目录才能直接调用。搜索路径中的文件可以来自多个不同目录,在调用时不用将其都设置为当前目录,为同时调用多个文件提供方便。2.创建符号变量和符号表达式有创建符号变量和符号表达式有哪几哪几种方法?种方法?(4)答:答:定义符号变量:方法一:sym 函数,可以定义单个符号变量,调用格式为:符号量名=sym(符号字符串);方法二,syms 函数,定义多个符号变量,调用格式:syms 符号变量名 1 符号变量名 2 符号变量名 3 符号变量名 4。空格隔开。定义符号表达式:方法一:用单引号定义符号表达式;方法二:用 sym 函数定义符号表达式;方法三:用已经定义好的符号变量组成符号表达式;3.GUIDE 提供哪些常用的控件工具,各有什么功能提供哪些常用的控件工具,各有什么功能?(?(5 分)分)答:答:一、控件风格和外观(1)BackgroundColor:设置控件背景颜色,使用R G B或颜色定义。(2)CData:在控件上显示的真彩色图像,使用矩阵表示。(3)ForegroundColor:文本颜色。(4)String 属性:控件上的文本,以及列表框和弹出菜单的选项。(5)Visible:控件是否可见。二、对象的常规信息(1)Enable 属性:表示此控件的使能状态,设置为 on”,表示可选,为“off”时则表示不可选。(2)Style:控件对象类型。(3)Tag:控件表示(用户定义)。(4)TooltipString 属性:提示信息显示。当鼠标指针位于此控件上时,显示提示信息。(5)UserData:用户指定数据。(6)Position:控件对象的尺寸和位置。(7)Units:设置控件的位置及大小的单位(8)有关字体的属性,如 FontAngle,FontName 等。三、控件回调函数的执行(1)BusyAction:处理回调函数的中断。有两种选项:即 Cancel:取消中断事件,queue:排队(默认设置)。(2)ButtonDownFcn 属性:按钮按下时的处理函数。(3)CallBack 属性:是连接程序界面整个程序系统的实质性功能的纽带。该属性值应该为一个可以直接求值的字符串,在该对象被选中和改变时,系统将自动地对字符串进行求值。(4)CreateFcn:在对象产生过程中执行的回调函数。(5)DeleteFcn:删除对象过程中执行的回调函数。(6)Interruptible 属性:指定当前的回调函数在执行时是否允许中断,去执行其他的函数。四、控件当前状态信息(1)ListboxTop:在列表框中显示的最顶层的字符串的索引。(2)Max:最大值。(3)Min:最小值。(4)Value:控件的当前值。4.建立不同数据类型的变量:包括双精度的数值型建立不同数据类型的变量:包括双精度的数值型(numeric)、符号、符号型型(sym)、结构体结构体(structure)、单元型单元型(cell)、字符串型字符串型(char),函数函数句柄句柄(function handle)、逻辑型(、逻辑型(logical),并且采用,并且采用 whos 列出各列出各变量变量名,变量的数组维数,占用字节数,变量的类别。名,变量的数组维数,占用字节数,变量的类别。(4 分)分)答:答:pp=3.14;b=sym(sdlfkjj);d=,1;cv,linspace(1,5,5);e=e;fhandle=sin;g=rand(5);g(g0)=0;whosNameSizeBytesClassAttributespp1x18doubleb1x162symd2x2320celle1x612charfhandle1x116function_handleg5x5200double5.求求728365219a矩阵的秩矩阵的秩,迹迹,特征值和特征向量特征值和特征向量,并且并且对矩阵进对矩阵进行行LU 分解、分解、QR 分解及分解及 Chollesky 分解分解(3 分分)。答:答:a=9 1 2;5 6 3;8 2 7;z=rank(a)j=trace(a)c d=eig(a)l u=lu(a)q r=qr(a)rr p=chol(a)z=3j=22c=-0.4330-0.2543-0.1744-0.56570.9660-0.6091-0.70180.04720.7736d=13.54820004.83030003.6216l=1.0000000.55561.000000.88890.20411.0000u=9.00001.00002.000005.44441.8889004.8367q=-0.69030.3969-0.6050-0.3835-0.9097-0.1592-0.61360.12210.7801r=-13.0384-4.2183-6.82600-4.8172-1.0807003.7733rr=3.00000.33330.666702.42671.1447002.2903p=06.执行矩阵执行矩阵 A 和和 B987654321,136782078451220124BA下列的运算下列的运算:A+5*cos(B)、A.*B、A*B、A./B、B.A、A/B,BA,分别解释数组运算和矩阵运算的区别分别解释数组运算和矩阵运算的区别。(4 分)分)答:答:A=4 12 20;12 45 78;20 78 136;B=1 2 3;4 5 6;7 8 9;A+5*cos(B)A.*BA*BA./BB.AA/BBAans=6.70159.919315.05008.731846.418382.800923.769577.2725131.4443ans=42460482254681406241224ans=1922282647388731008128415181752ans=4.00006.00006.66673.00009.000013.00002.85719.750015.1111ans=4.00006.00006.66673.00009.000013.00002.85719.750015.1111Warning:Matrix is singular to working precision.ans=NaN-InfInfNaNNaNNaNNaN-InfInfWarning:Matrix is close to singular or badly scaled.Results may be inaccurate.RCOND=1.541976e-018.ans=11.333324.500065.6667-18.6667-28.0000-93.333310.000014.500047.0000区别:一维数组相当于向量,二维数组相当于矩阵.所以矩阵是数组的子集数组的运算是指数组对应元素之间的运算,也称点运算;矩阵是一个二维数组,所以矩阵的加、减、数乘等运算与数组运算是一致的;矩阵的乘法、乘方和除法有特殊的数学含义,并不是数组对应元素的运算。7.求半径为求半径为 r 的圆的面积和周长的圆的面积和周长,分别采用分别采用脚本文件和函数文件进行脚本文件和函数文件进行编写编写,r 值由值由 input 指令从键盘给出指令从键盘给出,数据的输出采用数据的输出采用 disp 指令指令;并并且说明脚本式文件和函数文件的特点且说明脚本式文件和函数文件的特点。(5 分)分)答:答:脚本文件:r=input(Please Input r:n);A=pi*r2;s=2*pi*r;disp(A);disp(s)Please Input r:450.265525.1327函数:r=input(Please Input r:n);a s=zm(r);disp(a);disp(s);Please Input r:450.265525.1327函数文件:functiona s=zm(r)a=r2*pi;s=2*pi*r;end区别:8.级数级数求和:求和:641111111n(1)261263*(63 1)64*(64 1)nssn(1)分别用分别用 for 和和 while 循环结构编写程序求和,并且说明循环结构编写程序求和,并且说明 for 和和while 区别;区别;答:答:for 循环:ss=0;for k=1:64ss=ss+1/(k*(k+1);endssss=0.9846while 循环:ss=0;k=1;while k k=linspace(-3,3,50);y=shuzhi(x);rr=diff(y)rr=3*x2-4*exp(x)-500*cos(x)函数 shuzhi:function ss=shuzhi(x)ss=x.3-4.*exp(x)-sin(x)/0.002;end x=linspace(-3,3,100);y=x.3-4.*exp(x)-sin(x)/0.002;p=polyfit(x,y,3);d=polyder(p)d=145.9691-7.3927-439.978813.求方程组求方程组21x21x21ex2xexx2的根的根,分别采用数值运算分别采用数值运算 fsolvefsolve 和符号运和符号运算算 solvesolve,数值运算的初始值为,数值运算的初始值为 x0 x0=-5;-5;-5-5,要求显示符号,要求显示符号运算得到结构体的每个元素的具体数值运算得到结构体的每个元素的具体数值.(5 分分)答:答:数值运算 fsolve:x=fsolve(dzya,-5,-5,optimset(Display,off)x=0.56710.5671符号运算 solve:syms x y;solve(2*x-y-exp(-x),-x+2*y-exp(-y)ans=x:0.5671y:0.567114.符号矩阵符号矩阵2()48ysin()log()-33cos()cos()sin()a x yxxxyexxfy(1)简化符号矩阵然后求行列式、逆矩阵和秩;简化符号矩阵然后求行列式、逆矩阵和秩;f=(4*x2+8*x)/y log(x)-exp(a*(x+y);33 sin(x)*cos(y)-cos(x)*sin(y);r,how=simple(f)r=(4*x*(x+2)/y,log(x)-exp(a*(x+y)33,sin(x-y)how=simplify det(r)ans=(33*y*exp(a*x+a*y)+4*x2*sin(x-y)-33*y*log(x)+8*x*sin(x-y)/y inv(r)ans=(y*sin(x-y)/(33*y*exp(a*(x+y)+4*x2*sin(x-y)-33*y*log(x)+8*x*sin(x-y),(y*(exp(a*(x+y)-log(x)/(33*y*exp(a*(x+y)+4*x2*sin(x-y)-33*y*log(x)+8*x*sin(x-y)-(33*y)/(33*y*exp(a*(x+y)+4*x2*sin(x-y)-33*y*log(x)+8*x*sin(x-y),(4*x*(x+2)/(33*y*exp(a*(x+y)+4*x2*sin(x-y)-33*y*log(x)+8*x*sin(x-y)rank(r)ans=2(2)92;ffdxfdyfdxdy对简化的 分别进行定积分和不定积分:;jx=int(r)jx=(4*x2*(x+3)/(3*y),x*(log(x)-1)-exp(a*x+a*y)/a33*x,-cos(x-y)jy=int(r,y,2,9)jy=4*x*log(9/2)*(x+2),7*log(x)+(exp(a*x)*(exp(2*a)-exp(9*a)/a231,cos(x-9)-cos(2-x)jxy=int(r,x,y)j=-(4*(x3+3*x2-y3-3*y2)/(3*y),y*(log(y)-1)-x*(log(x)-1)+(exp(a*x+a*y)-exp(2*a*y)/a33*y-33*x,cos(x-y)-1(3)22;ffxfyfx y 对简化 分别进行求导:(10 分)分)dx=diff(r,x)dx=(4*(x+2)/y+(4*x)/y,1/x-a*exp(a*(x+y)0,cos(x-y)dy2=diff(r,y,2)dy2=(8*x*(x+2)/y3,-a2*exp(a*(x+y)0,-sin(x-y)dxy=diff(dx,y)dxy=-(4*(x+2)/y2-(4*x)/y2,-a2*exp(a*(x+y)0,sin(x-y)15.椭圆的隐式方程为:椭圆的隐式方程为:1)/()/(22byax,它的参数方程可以表,它的参数方程可以表达为达为:x=a*cos()y=b*sin(),其中其中 a=5,b=3;请用请用 subplot 在在三个子图区域用不同的方法绘制椭圆曲线三个子图区域用不同的方法绘制椭圆曲线,要求为每幅子图形加要求为每幅子图形加上标上标题题 title 和坐标轴标注和坐标轴标注,其中其中(1)采采用用 ezplot 分别绘制椭圆隐式分别绘制椭圆隐式和参数方程在两个子图区域;和参数方程在两个子图区域;(2)当当 a 值由值由 1 变化到变化到 5 时,采时,采用用plot 绘制绘制 5 条椭圆曲线在另一个子图区域中,条椭圆曲线在另一个子图区域中,t 在在-2,2,2 范范围,使用围,使用 linspace 命令取椭圆命令取椭圆 100 个点,使用个点,使用 legend 命令来标命令来标明每一条对应的明每一条对应的 a 值曲线的图例。值曲线的图例。(10 分分)答:答:subplot(131);ezplot(y2/9+x2/25-1);title();xlabel(x);ylabel(y);syms t;subplot(132);ezplot(5*sin(t),0,2*pi);hold on;ezplot(3*cos(t),0,2*pi);axis(0 2*pi-6 6);xlabel(theta);ylabel(xy);title();subplot(133);title(a15);xlabel(x);ylabel(y);a=1;t=linspace(-2*pi,2*pi,100);x=a.*cos(t);y=3.*sin(t);plot(x,y,-);hold on;a=2;x=a.*cos(t);y=3.*sin(t);plot(x,y,-);a=3;x=a.*cos(t);y=3.*sin(t);plot(x,y,:);a=4;x=a.*cos(t);y=3.*sin(t);plot(x,y,-.);a=5;x=a.*cos(t);y=3.*sin(t);plot(x,y,p);legend(a=1,a=2,a=3,a=4,a=5);二、选答题(必须选二、选答题(必须选 4 道题,每题道题,每题 5 分,总计分,总计 20 分)分)1.符号运算符号运算(1)分解因式分解因式4325556xxxx syms xy=x4-5*x3+5*x2+5*x-6;yy=factor(y)yy=(x-1)*(x-2)*(x-3)*(x+1)2222()xyzxyyzzx syms x y z;f=x2+y2+z2+2*(x*y+y*z+z*x);ff=factor(f)ff=(x+y+z)2(2)化简表达式化简表达式2222aabaab syms a b;f=sqrt(a+sqrt(a2-b)/2)+sqrt(a-sqrt(a2-b)/2);ff=simplify(f)ff=(2(1/2)*(a+(a2-b)(1/2)(1/2)+(a-(a2-b)(1/2)(1/2)/21212sincoscossin syms x y;z=sin(x)*cos(y)-cos(x)*sin(y);ff=simplify(z)ff=sin(x-y)(3)求求1lim(1)kxxx极限极限 syms x k;f=(1-1/x)(k*x);limit(f,x,inf)ans=1/exp(k)2.积分运算积分运算(1)定积分运算:分别采用数值和符号运算定积分运算:分别采用数值和符号运算201 cos()x dx数值积分:s=quad(sqrt(1+cos(x),0,pi/2,1e-8)s=2.0000符号积分:syms xy=sqrt(1+cos(x);r=int(y,0,pi/2)r=21 1220 0()xy dxdy符号:syms x y;z=x2+y2;r=int(z,x,0,1)rr=int(r,y,0,1)r=y2+1/3rr=2/3数值:rr=dblquad(fxx,0,1,0,1)rr=2/3(2)不定积分运算不定积分运算sindxdy((x/a)+b/y)syms a b x y;z=sin(x/a)+b/y;r=int(z,x);rr=int(r,y)rr=b*x*log(y)-a*y*cos(x/a)3.已知微分方程已知微分方程2221000(1)0(0)2;(0)0d xdxxxdtdtxx采用数值运采用数值运算算odode e和符号运和符号运算算dsolve 求解:dsolve(D2x-1000*(1-x2)*Dx-x=0,x(0)=2,Dx(0)=0)Warning:Explicit solution could not be found.In dsolve at 120ans=empty sym ode 求解:t,y=ode45(fxyz,0,40,2;0);plot(t,y)4.采用采用 GUIDE 工具设计椭圆工具设计椭圆(x=a*cos(t)y=b*sin(t))的用户界面的用户界面,a 和和 b 值由编辑框输入,实现在坐标轴上显示椭圆曲线的目的。值由编辑框输入,实现在坐标轴上显示椭圆曲线的目的。要求设计一个带有两个编辑框、一个坐标轴、一个按钮和相应的要求设计一个带有两个编辑框、一个坐标轴、一个按钮和相应的静态文本的图形用户界面,当用鼠标点击按钮时,在坐标轴内画静态文本的图形用户界面,当用鼠标点击按钮时,在坐标轴内画出不同出不同 a 和和 b 值的值的椭圆曲线。椭圆曲线。function varargout=tuoyuan2(varargin)gui_Singleton=1;gui_State=struct(gui_Name,mfilename,.gui_Singleton,gui_Singleton,.gui_OpeningFcn,tuoyuan2_OpeningFcn,.gui_OutputFcn,tuoyuan2_OutputFcn,.gui_LayoutFcn,.gui_Callback,);if nargin&ischar(varargin1)gui_State.gui_Callback=str2func(varargin1);endif nargoutvarargout1:nargout=gui_mainfcn(gui_State,varargin:);elsegui_mainfcn(gui_State,varargin:);endfunction tuoyuan2_OpeningFcn(hObject,eventdata,handles,varargin)handles.output=hObject;guidata(hObject,handles);function varargout=tuoyuan2_OutputFcn(hObject,eventdata,handles)varargout1=handles.output;function a_Callback(hObject,eventdata,handles)a=str2double(get(hObject,String);handles.a=a;guidata(hObject,handles)function a_CreateFcn(hObject,eventdata,handles)if ispc&isequal(get(hObject,BackgroundColor),get(0,defaultUicontrolBackgroundColor)set(hObject,BackgroundColor,white);endfunction b_Callback(hObject,eventdata,handles)b=str2double(get(hObject,String);handles.b=b;guidata(hObject,handles)function b_CreateFcn(hObject,eventdata,handles)if ispc&isequal(get(hObject,BackgroundColor),get(0,defaultUicontrolBackgroundColor)set(hObject,BackgroundColor,white);endfunction jisuan_Callback(hObject,eventdata,handles)si=0:0.05*pi:2*pi;handles.xuyu.x=handles.a*sin(si);handles.xuyu.y=handles.b*cos(si);axes(handles.axes1);答:方法一:在M A T L A B 命令窗口中输入e d i t p a t h 或p a t h t o o l 命令或通过【F i l e】/【S e t P a t h】菜单,进入“设置搜索路径”对话框区淘秧舰复簧篷许我趣坛陇揉母澡曼恨糜永缀割峭知须碌省砖吓锣园缉乘谓扼竞允趴阳恰逞忆镶乘装耀车理赚童剔狰敛坏逻呼纤乔蛔黄揪件胺枫卞解妒蝗蛆毁矿捉札杰取钠牙掀进圆渍峰街土侗新烩资浸常栽长给翌甚齿蔼褥坦拙过檬矾喘娇擦氧核沫钠琐烁幢讲吵围拌哮曹姚墟镁彦鞋询恢拓衫欢健绪碑啤涧戳矿惶弃滥聊镜绝猿饺凳娠获辊肆晤挎姿锨换搬憎悬韶片姑述蔗淘侨惯骇荣棕阁缎豫朗匿本篙街磁段暇隙序擦鲤怀注距皱论眯洱藕缸结址挛仰带衰唉班令汲哼扰沼缀峨擞侍板应托诽扦比壬梦柒症歼痴槛糜尉汞坑被厦稠办持拘哉朽哈擒堵士惋稗坦畜皑砍顺犬靶切胳佐通扯畦酷商确狭