哈工大 Matlab春季学期《MATLAB语言及应用》试题.docx
- 文档编号:23852828
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:16
- 大小:103.76KB
哈工大 Matlab春季学期《MATLAB语言及应用》试题.docx
《哈工大 Matlab春季学期《MATLAB语言及应用》试题.docx》由会员分享,可在线阅读,更多相关《哈工大 Matlab春季学期《MATLAB语言及应用》试题.docx(16页珍藏版)》请在冰豆网上搜索。
哈工大Matlab春季学期《MATLAB语言及应用》试题
2013年春季学期
《MATLAB语言及应用》课程试卷
姓名:
罗洋
学号:
1121510221
学院:
外国语学院
专业:
英语-机械制造设计及其自动化
必答题
1.常用的matlab界面由哪些窗口组成,各有什么主要作用?
(4分)
(1)菜单和工具栏功能:
包括【File】【Edit】【Debug】等对文件,程序等进行操作
(2)命令窗口功能:
用于输入命令并显示除图形以外的所有执行结果
(3)历史命令窗口功能:
主要用于记录所有执行过的命令
(4)当前工作目录窗口功能:
对文件和目录进行操作
(5)工作空间窗口功能:
查看、载入和保存变量
2.如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别?
(2分)
方法一:
在MATLAB命令窗口中输入editpath或pathtool命令或通过【File】/|【SetPath】菜单,进入“设置搜索路径”对话框,通过该对话框编辑搜索路径。
方法二:
在命令窗口执行“path(path,‘D:
\Study’)”,然后通过“设置搜索路径”对话查看“D:
\Study”是否在搜索路径中。
方法三:
在命令窗口执行“addpathD:
\Study-end”,将新的目录加到整个搜索路径的末尾。
如果将end改为begin,可以将新的目录加到整个搜索路径的开始。
区别:
当前文件目录是正在运行的文件的目录,显示文件及文件夹的详细信息,且只有将文件设置为当前目录才能直接调用。
搜索路径中的文件可以来自多个不同目录,在调用时不用将其都设置为当前目录,为同时调用多个文件提供方便。
3.有几种建立矩阵的方法?
各有什么优点?
(4分)
1.在命令窗口中直接输入优点:
适合输入不规则和较小的矩阵
2.通过语句和函数生成矩阵优点:
适合输入规则且较大的矩阵
3.通过M文件来建立矩阵,从外部数据文件中导入矩阵
优点:
方便创建和导入大型矩阵
4.说明break语句、continue语句和return语句的用法。
(3分)
1.break语句用于终止for循环和while循环的执行。
当遇到break时,则退出循环体继续执行循环体外的下一个语句。
在嵌套循环中,break往往存在于内层的循环中。
2.continue命令用于结束本次for或while循环,与break命令不同的是continue指结束本次循环而继续进行下次循环。
3.return语句用来终止被调用函数的运行,后面的程序代码将不再执行,直接返回到上一级调用函数。
5.GUI开发环境中常用的控件包括哪些,各有何作用?
(4分)
①按钮(PushButtons):
执行某种预定的功能或操作;
②开关按钮(ToggleButton):
产生一个动作并指示一个二进制状态(开或关),当鼠点击它时按钮将下陷,并执行callback(回调函数)中指定的内容,再次点击,按钮复原,并再次执行callback中的内容;
③单选框(RadioButton):
单个的单选框用来在两种状态之间切换,多个单选框组成一个单选框组时,用户只能在一组状态中选择单一的状态,或称为单选项;
④复选框(CheckBoxes):
单个的复选框用来在两种状态之间切换,多个复选框组成一个复选框组时,可使用户在一组状态中作组合式的选择,或称为多选项;
⑤文本编辑器(EditableTexts):
用来使用键盘输入字符串的值,可以对编辑框中的内容进行编辑、删除和替换等操作;
⑥静态文本框(StaticTexts):
仅用于显示单行的说明文字;
⑦滚动条(Slider):
可输入指定范围的数量值;
⑧边框(Frames):
在图形窗口圈出一块区域;
⑨列表框(ListBoxes):
在其中定义一系列可供选择的字符串;
⑩弹出式菜单(PopupMenus):
让用户从一列菜单项中选择一项作为参数输入;
⑩坐标轴(Axes):
用于显示图形和图象。
6.进行simulink建模仿真的主要步骤包括哪些?
(4分)
(1)根据要仿真的系统框图,在SIMULINK窗口的仿真平台上构建仿真模型。
(2)设置模块参数。
(3)设置仿真参数。
(4)启动仿真。
(5)观测仿真结果。
7.a=[00.210-59]在进行逻辑运算时,a相当于什么样的逻辑量。
(2分)
解:
a=[0,1,1,0,1,1],a是一个逻辑向量。
8.生成4阶魔方矩阵A,再分别计算A的数组平方和矩阵平方,给出执行语句以及计算结果。
(3分)
解:
>>A=magic(4)
B=A^2
SSR=sum>>A=magic(4)
B=A^2
SSR=sum(B(:
))
MSR=A^2
A=
162313
511108
97612
414151
B=
25649169
2512110064
814936144
161962251
SSR=
1496
MSR=
345257281273
257313305281
281305313257
273281257345(B(:
))
MSR=A^2
A=
162313
511108
97612
414151
B=
25649169
2512110064
814936144
161962251
SSR=
1496
MSR=
345257281273
257313305281
281305313257
273281257345
9.生成一个8阶的魔方矩阵A,再采用相应的MATLAB命令,将其全部偶数行提取出来,赋给矩阵B,给出命令及结果(4分)
M=magic(8);
>>B=M(~mod(M,2))
A =
64 2 3 61 60 6 7 57
9 55 54 12 13 51 50 16
17 47 46 20 21 43 42 24
40 26 27 37 36 30 31 33
32 34 35 29 28 38 39 25
41 23 22 44 45 19 18 48
49 15 14 52 53 11 10 56
8 58 59 5 4 62 63 1
B =
9 55 54 12 13 51 50 16
40 26 27 37 36 30 31 33
41 23 22 44 45 19 18 48
8 58 59 5 4 62 63 1
10.矩阵
,计算a的行列式和逆矩阵。
(4分)
>>a=[84-12;14108;689];
>>ad=det(a)
ad=
-728
>>ai=inv(a)
ai=
-0.03570.1813-0.2088
0.1071-0.19780.3187
-0.07140.0549-0.0330
11.对于
,如果
,
,求解X。
(3分)
>>A=[492;784;357];
>>B=[573618]’;
>>X=A\B
X=
-3.0180
8.1018
-1.9222
12.试求出如下极限:
(4分)
(1)
;
(2)
(1)解:
>>clear
>>symsx;
>>limit(((3^x+9^x)^(1/x)),x,inf)
ans=
9
(2)解:
>>symsxy;
>>t=x*y
t=
x*y
>>limit(limit(t/(sqrt(t+1)-1),x,0),y,0)
ans=
2
13.求多项式
乘以、除以多项式
的结果。
(4分)
求乘积
>>p=[1,8,0,0,-10];
>>q=[0,0,2,-1,3];
>>k=conv(p,q)
k=
00215-524-2010-30
结果为2x^6+15x^5-5x^4+24x^3-20x^2+10x-30
相除
>>q=[2,-1,3];
>>[k,r]=deconv(p,q)
k=
0.50004.25001.3750
r=
000-11.3750-14.1250
=(
)*(0.500x^2+4.250x+1.375)+(-11.375x-14.125)
14.根据x=[66497156384690]绘制饼图,并将第五个切块分离出来。
(3分)
>> x=[66 49 71 56 38];
>> L=[0 0 0 0 1];
>> pie(x,L);
15.编写一个函数,使其能够产生如下的分段函数:
,并调用此函数,绘制在x=[0,2]范围内的
曲线。
(4分)
M函数
functiony=f(x)
y=(x<=2).*(0.5*x)+(x>=2&x<=6).*(1.5-0.25*x)+(x>3).*(0.5);
函数图像如下
>>x=0:
0.1:
2;
>>y=f(x).*f(x+2);
>>plot(x,y),gridon
16.假定某天的气温变化记录如下表,试作图描述这一天的气温变化规律,再用二次多项式拟合的方法得出其变化规律。
(5分)
时刻t(h)
0
1
2
3
4
5
6
7
8
9
10
11
12
温度oC(t)
15o
14o
14o
14o
14o
15o
16o
18o
20o
22o
23o
25o
28o
时刻t(h)
13
14
15
16
17
18
19
20
21
22
23
24
温度oC(t)
31o
32o
31o
29o
27o
25o
24o
22o
20o
18o
17o
16o
图像如下
二次多项式拟合
>>pf=polyfit(t,w,2)
pf=
-0.10813.02575.7159
气温w=-0.1081t^2+3.0257t+5.7159
17.计算z=yx2+3y2x+2y3
的
和
。
(3分)
>>clear;
>>symsxy;
>>z=y*x^2+3*y^2*x+2*y^3;
>>dt=diff(z,y);
>>dxy=diff(dt,x);
>>dt,dxy
dt=
x^2+6*x*y+6*y^2
dxy=
2*x+6*y
=x^2+6*x*y+6*y^2
=2*x+6*y
18.用符号计算验证三角等式:
sin
(1)cos
(2)-cos
(1)sin
(2)=sin(1-2)。
(4分)
解:
>>symsphi1phi2;
>>y=simple(sin(phi1)*cos(phi2)-cos(phi1)*sin(phi2))
y=
sin(phi1-phi2)
19.求矩阵
的行列式值、逆和特征根。
(3分)
>>symsa11a12a21a22;
>>A=[a11,a12;a21,a22]
>>AD=det(A)%行列式
>>AI=inv(A)%逆
>>AE=eig(A)%特征值
A=
[a11,a12]
[a21,a22]
AD=
a11*a22-a12*a21
AI=
[-a22/(-a11*a22+a12*a21),a12/(-a11*a22+a12*a21)]
[a21/(-a11*a22+a12*a21),-a11/(-a11*a22+a12*a21)]
AE=
[1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)]
[1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)]
20.A是一个維度m×n的矩阵.写一段程序,算出A中有多少个零元素(5分)
解:
先输入A
A=[…….]
Sum(A(:
)==0)
如:
>>clear
>>a=[1234;3456;0004;146789;1111];
>>sum(a(:
)==0)
ans=
3
选答题(选答下述6题中的4题,每题7分,可在程序中可添加适当注释)
21.房间里面有序号分别为1,2,…,100的电灯,初始时都关闭;又有100个序号分别为1,2,…,100的学生,当他们依次从这100盏灯前走过时分别将序号是本人序号的整数倍的所有灯开关切换一次(原来为开的变为关,原来为关的变为开)。
请问当所有的人都走过之后,那些灯是亮的?
编程并给出亮着灯的序号。
M文件如下:
functionguoding()
i=0;
j=0;
forn=1:
100
form=1:
100
if(mod(n,m)==0)
i=i+1;
end
end
if(mod(i,2)~=0)
n
end
end
22.分别采用数组方法(不用循环语句)、for循环语句、while循环语句求解下列表达式的值
23.编程验证哥德巴赫猜想:
任一大于2的偶数都可写成两个质数之和。
程序运行时,提示输入一个任意的偶数,通过运算给出两个质数,其和为输入的偶数。
(分别就输入偶数N=10,1000,100000给出程序运行结果)
24.用循环语句形成Fibonacci数列F1=F2=1,Fk=Fk-1+Fk-2,k=3,4,…。
并验证极限
.(提示:
计算至两边误差小于精度10-8)
clear;
F
(1)=1;
F
(2)=1;
a=1e-8;
k=2;
x=0;
fork=3:
n%n为输出项数
%k=k+1;
F(k)=F(k-1)+F(k-2);
x=F(k)/F(k-1)-(1+sqrt(5))/2;
end
F,x
可以发现当N无限大时,x趋近于零。
25.考虑将一枚均匀硬币掷N次,当N很大时,正面出现的机率接近0.5,采用matlab生成随机数列,再设计一个随机模拟程序验证这一现象。
(分别就N=10,1000,100000给出模拟结果)。
>>%文件exercise_4.m
N=input('pleaseinputanumber:
');
r=rand(1,N);x=0;
fori=1:
N
ifr(i)>0.5
x=x+1;
end
end
p=x/N
>>exercise_4
pleaseinputanumber:
10
p=0.7000
>>exercise_4
pleaseinputanumber:
1000
p=0.5150
>>exercise_4
pleaseinputanumber:
100000
p=0.5003
26.若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6是完数。
编程求[1,10000]之间的全部完数。
function[v,len]=perfnum(maxscale)
%求maxscale内的所有完全数,
%v存储结果,len是个数
ifmaxscale<2
len=0;
end
len=0;
v=[];
forn=2:
1:
maxscale
sum=0;
form=1:
1:
n/2
ifmod(n,m)==0
sum=sum+m;
end
end
ifsum==n
len=len+1;
v=[v,n];
end
end
保存为M文件。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB语言及应用 哈工大 Matlab春季学期MATLAB语言及应用试题 Matlab 春季 学期 语言 应用 试题
![提示](https://static.bdocx.com/images/bang_tan.gif)