Matlab 考题题整理 带答案

发布时间:2010-05-15 00:02:41   来源:文档文库   
字号:

MATLAB 考试试题 (1)

产生一个1x10的随机矩阵,大小位于(-5 5),并且按照从大到小的顺序排列好!(注:要程序和运行结果的截屏)

答案:

a=10*rand(1,10)-5;

b=sort(a,'descend')

1.请产生一个100*5的矩阵,矩阵的每一行都是[1 2 3 4 5]

2.  已知变量:A=’ilovematlab’B=’matlab’, 请找出:

A   BA中的位置。

B   B放在A后面,形成C=‘ilovematlabmatlab’

3.  请修改下面的程序,让他们没有for循环语句!

A=[1 2 3; 4 5 6; 7 8 9];

[r c]=size(A); 

for i=1:1:r

    for j=1:1:c

        if (A(i,j)>8 | A(i,j)<2)

            A(i,j)=0;

        end

    end

end

4.  请把变量A=[1 2 3; 4 5 6; 7 8 9]写到文件里(output.xls),写完后文件看起来是这样的

 1 2 3 4 5 6 7 8 9

5.试从Yahoo网站上获得微软公司股票的20089月的每日收盘价。

6.编写M文件,从Yahoo网站批量读取60000.SH600005.SH20089月份的每日收盘价(提示:使用字符串函数)。

7.  将金牛股份(00093720051214日至2006110日的交易记录保存到Excel中,编写程序将数据读入MATLAB中,进一步将数据读入Access数据库文件。

8.已知资产每日回报率为0.0025,标准差为0.0208,资产现在价值为0.8亿,求5%水平下资产的10天在险价值(Var)

9.a=[1 2 3 4 5],b=a(1)*a(5)+a(2)*a(4)+a(3)*a(3)+a(4)*a(2)+a(5)*a(1).试用MATLAB中最简单的方法计算b,注意最简单哦。

 

1、求下列联立方程的解

3x+4y-7z-12w=4

5x-7y+4z+ 2w=-3

x     +8z- 5w=9

-6x+5y-2z+10w=-8

求系数矩阵的秩;

求出方程组的解。

:(1

>> a=[3   4    -7   -12];

   5   -7    4    2 ;

   1    0    8    -5;

   -6   5    -2    10];

c=[4; -3; 9;-8];

b=rank(a)

b =  4

2>> d=a\c

d = -1.4841,   -0.6816, 0.5337,-1.2429

即: x=-1.4841;y= -0.6816;z= 0.5337;w=-1.2429

2、设 y=cos[0.5+((3sinx)/(1+x^2))]  把x=0~2π间分为101点,画出以x为横坐标,y为纵坐标的曲线;

:>> x=linspace(0,2*pi,101);

y=cos(0.5+3.*sin(x)./(1+x.*x));

plot(x,y)



3、设     f(x)=x^5-4x^4+3x^2-2x+6                              

(1)取x=[-2,8]之间函数的值(取100个点),画出曲线,看它有几个零点。

(提示:用polyval 函数)

:>>p=[1 -4 3 -2 6];

x=linspace(-2,8,100);

y=polyval(p,x);

plot(x,y);

axis([-2,8, -200,2300]);

为了便于观察,在y=0处画直线,图如下所示:

与y=0直线交点有两个,有两个实根。

(2)用roots函数求此多项式的根

>> a=roots(p)

a =  3.0000    ,1.6956    , -0.3478 + 1.0289i   , -0.3478 - 1.0289i

4、在[-10,10;-10,10]范围内画出函数  的三维图形。

:>>[X,Y]=meshgrid(-10 : 0.5 :10);

a=sqrt(X.^2+Y.^2) +eps;

Z=sin(a)./a;

mesh(X,Y,Z);

matlab试卷,求答案

一、选择或填空(每空2分,共20分)

1、标点符号()可以使命令行不显示运算结果,()用来表示该行为注释行。

2、下列变量名中()是合法的。

(A) char_1 ; (B) x*y ; (C) x\y ; (D) end

3、为~,步长为的向量,使用命令()创建。

4、输入矩阵,使用全下标方式用()取出元素“ ”,使用单下标方式用()取出元素“ ”

5、符号表达式中独立的符号变量为()。

6M脚本文件和M函数文件的主要区别是()和(

)。

7、在循环结构中跳出循环,但继续下次循环的命令为()。

(A) return; (B) break ; (C) continue ; (D) keyboad

二、(本题12分)利用MATLAB数值运算,求解线性方程组(将程序保存为test02.m文件)

三、(本题20分)利用MATALAB符号运算完成(将程序保存为test03.m文件):

1)创建符号函数

2)求该符号函数对的微分;

3)对趋向于求该符号函数的极限;

4)求该符号函数在区间上对的定积分;

5)求符号方程的解。

四、(本题20分)编写MATALAB程序,完成下列任务(将程序保存为test04.m文件):

1)在区间上均匀地取20个点构成向量;

2)分别计算函数与在向量处的函数值;

3)在同一图形窗口绘制曲线与,要求曲线为黑色点画线,曲线为红色虚线圆圈;并在图中恰当位置标注两条曲线的图例;给图形加上标题“y1 and y2”

五、(本题15分)编写M函数文件,利用for循环或while循环完成计算函数的任务,并利用该函数计算时的和(将总程序保存为test05.m文件)。

六、(本题13分)已知求解线性规划模型:

MATLAB命令为

x=linprogc,A,b,Aeq,beq,VLB,VUB

试编写MATLAB程序,求解如下线性规划问题(将程序保存为test06.m文件):

问题补充:

卷子的地址

看不见符号,能做就做了一些.

1、标点符号( ; )可以使命令行不显示运算结果,( % )用来表示该行为注释行。

2、下列变量名中( A )是合法的。

(A) char_1 ; (B) x*y ; (C) x\y ; (D) end

3、为~,步长为的向量,使用命令(本题题意不清)创建。

4、输入矩阵,使用全下标方式用(本题题意不清)取出元素“ ”,使用单下标方式用(本题题意不清)取出元素“ ”

5、符号表达式中独立的符号变量为()。

6M脚本文件和M函数文件的主要区别是(变量生存期和可见性)和(函数返回值)。

7、在循环结构中跳出循环,但继续下次循环的命令为( C )。

(A) return; (B) break ; (C) continue ; (D) keyboad

二、(本题12分)利用MATLAB数值运算,求解线性方程组(将程序保存为test02.m文件)

三、(本题20分)利用MATALAB符号运算完成(将程序保存为test03.m文件):

1)创建符号函数syms x

2)求该符号函数对的微分;

3)对趋向于求该符号函数的极限;

4)求该符号函数在区间上对的定积分;

5)求符号方程的解。

四、(本题20分)编写MATALAB程序,完成下列任务(将程序保存为test04.m文件):

1)在区间上均匀地取20个点构成向量;

2)分别计算函数与在向量处的函数值;

3)在同一图形窗口绘制曲线与,要求曲线为黑色点画线,曲线为红色虚线圆圈;并在图中恰当位置标注两条曲线的图例;给图形加上标题“y1 and y2”

五、(本题15分)编写M函数文件,利用for循环或while循环完成计算函数的任务,并利用该函数计算时的和(将总程序保存为test05.m文件)。

六、(本题13分)已知求解线性规划模型:

MATLAB命令为

x=linprogc,A,b,Aeq,beq,VLB,VUB

试编写MATLAB程序,求解如下线性规划问题(将程序保存为test06.m文件):

[例2.1] 已知SISO系统的状态空间表达式为(2-3)式,求系统的传递函数。

A=[0 1 0;0 0 1;-4 -3 -2];B=[1;3;-6];C=[1 0 0];D=0;

[num,den]=ss2tf(a,b,c,d,u)

[num,den]=ss2tf(A,B,C,D,1)

[例2.2] 从系统的传递函数(2-4)式求状态空间表达式。

num =[1 5 3];

den =[1 2 3 4];

[A,B,C,D]=tf2ss(num,den)

[例2.3] 对上述结果进行验证编程。

%将[例2.2]上述结果赋值给A、B、C、D阵;

A =[-2 -3 -4;1 0 0; 0 1 0]B =[1;0;0];C =[1 5 3];D=0;

[num,den]=ss2tf(A,B,C,D,1)

[例2.4]给定系统,求系统的零极点增益模型和状态空间模型,并求其单位脉冲响应及单位阶跃响应。

解:

num=[1 2 1 3];den=[1 0.5 2 1];

sys=tf(num,den) %系统的传递函数模型

Transfer function:

s^3 + 2 s^2 + s + 3

-----------------------------

s^3 + 0.5 s^2 + 2 s + 1

sys1=tf2zp(num,den) %系统的零极点增益模型sys1 =

sys2=tf2ss(sys) %系统的状态空间模型模型;或用[a,b,c,d]=tf2ss(num,den)形式

impulse(sys2) %系统的单位脉冲响应

step(sys2) %系统的单位阶跃响应

[例3.1] 对下面系统进行可控性、可观性分析。

解:

a=[-1 -2 2;0 -1 1;1 0 -1];b=[2 0 1]';c=[1 2 0]

Qc=ctrb(a,b) %生成能控性判别矩阵

rank(Qc) %求矩阵Qc的秩

ans = 3 %满秩,故系统能控

Qo=obsv(a,c) %生成能观测性判别矩阵

rank(Qo) %求矩阵Qo的秩

ans = 3 %满秩,故系统能观测

[例3.2] 已知系统状态空间方程描述如下:

试判定其稳定性,并绘制出时间响应曲线来验证上述判断。

解:

A=[-10 -35 -50 -24;1 0 0 0;0 1 0 0;0 0 1 0];

B=[1;0;0;0];C=[1 7 24 24];D=[0];

[z,p,k]=ss2zp(A,B,C,D,1);

Flagz=0;

n=length(A);

for i=1:n

if real(p(i))>0

Flagz=1;

end

end

disp('系统的零极点模型为');z,p,k

系统的零极点模型为

ifFlagz==1

disp('系统不稳定');

else disp('系统是稳定的');

end

运行结果为:

系统是稳定的

step(A,B,C,D)系统的阶跃响应

资源与环境工程学院2008级硕士研究生《MatLab及其应用》试题

注意,每题的格式均须包含3个部分

a. 程序(含程序名及完整程序):

b. 运行过程:

c. 运行结果:

(1)求解线性规划问题:

问各xi分别取何值时,Z有何极小值。(10分)

答:fprintf('线性规划问题求解 \n');

f = [-4;1;7];

A = [3,-1,1;1,1,-4;];

b = [4,-7]';

Aeq = [1,1,-1];

beq = [5]';

lb = [0,0,];

ub = [];

x = linprog(f,A,b,Aeq,beq,lb,ub);

x

z = f' * x;

fprintf('MIN z = %f \n' , z);

运行结果:线性规划问题求解

Optimization terminated successfully.

x =

2.2500

6.7500

4.0000

MIN z = 25.750000

(2)编写一个函数,使其能够产生如下的分段函数:

并调用此函数,绘制。(10分)

function y=f(x)

if x<=2

y=0.5*x;

else if x>6

y=0.5;

else y =1.5-0.25*x;

end

end

运行结果 x=2

f(x)=1

x = 0:0.05:2;

y = diag(A2(x)'*A2(x+2));

plot(x,y);

xlabel('\bfx');

ylabel('\bfy');



(3) 将一个屏幕分4幅,选择合适的步长在右上幅与左下幅绘制出下列函数的图形。(10分)

(曲线图);(曲面图)。

答:>>subplot(2,2,2)

>>ezplot('(cos(x))^(1/2)',[-pi/2 pi/2])

>>ylabel('y')

>>subplot(2,2,3)

>> x=-2:0.5:2;

>> y=-4:1:4;

>>ezsurfc('x^2/2^2+y^2/4^2')

(4) A 是一維度m×n的矩. 一段程序, 算出A中有多少个零元素10分)

答:>> A= input ('请输入一个矩阵')

[m,n]= size(A);

sig=0;

for i=1:m

for j=1:n

if A(i,j)==0

sig = sig+1;

end

end

end

请输入一个矩阵[0 1 2;1 0 2; 0 0 0]

A =

0 1 2

1 0 2

0 0 0

>>sig

sig =

5

(5) 向量. 一段程序, A中的最小元素10分)



答:A= input ('请输入一个向量')

[m,n]=sizeA

min =A(1,n);

for i=1:n

if A(1,i)

min=A(1,i)

end

end

请输入一个向量[1 2 3 -5 2 0]

A =

1 2 3 -5 2 0

min =

-5

B.应用题(50分)

根据专业方向特色和相关科研工作需求,经过与导师商量后,结合一个课题具体任务,编写一份Matlab应用工作报告。报告由:a课题任务要求,b技术路线,c程序,d运行结果,e总结、等部分构成,完成的报告经导师给出简单评语并签字后缴来。

a,课题任务:研究了一种生物质,油菜秸秆对水溶液中金属离子铜的吸附行为,分别从pH,用量,温度几个方面考察秸秆的吸附性,并对分析的最佳条件进行了探讨。同时从吸附热力学和吸附动力学角度探讨吸附机理。结果表明,100ml溶液pH=5.30,秸秆用量0.75g时,秸秆对铜的吸附量可达到6mg/g左右。

b,技术路线:通过实验,获得一系列的数据,然后通过Matlab来做各种关系图。从图中找到g各种关系式。

c,程序:x=[2.20 2.72 3.44 4.13 5.38]

y=[2.39 3.83 6.07 6.39 6.84]

plot(x,y);

xlabel('pH');

ylabel('吸附量')

1

x=[0.5 0.75 1.0 1.25 1.5 ]

y=[6.05 6.19 5.33 4.69 4.02]

plot(x,y);

xlabel('秸秆用量g');

ylabel('吸附量')

2

通过数据图,得到比较理想的实验条件pH和秸秆用量,接下来做动力学和等温线。

> x=[0.167 0.5 1 2 3 4 5 8 ]

y=[0.033201 0.086059 0.169779 0.322061 0.480769 0.644122 0.809061 1.269841]

plot(x,y);

xlabel('时间t');

ylabel('时间/吸附量')

3

x=[0.2363 0.15496 0.13619 0.12906 0.13373 0.13315]

y=[0.25218 0.04707 0.02014 0.01267 0.00881 0.00706]

plot(x,y);

xlabel('1/吸附量');

ylabel('1/平衡浓度')

4

x=[0.62654 0.80977 0.86585 0.8892 0.87377 0.87564]

y=[0.59829 1.3273 1.69589 1.89737 2.05503 2.15149]

plot(x,y);

xlabel('Lg吸附量');

ylabel('Lg平衡浓度')

5

d,总结:从图1和图2,分析看可以得到比较理想的对于本次实验的pH和秸秆用量。后面实验是在前面的基础上得到的。图3是吸附动力学反应速率图,从图中可以看到线性拟合程度很好,符合二级反应速率方程。图4和图5是吸附等温线作图,看以看出图4的线性拟合较图5的好,说明符合Langmuir吸附等温模型。

[例2.1] 已知SISO系统的状态空间表达式为(2-3)式,求系统的传递函数。

A=[0 1 0;0 0 1;-4 -3 -2];B=[1;3;-6];C=[1 0 0];D=0;

[num,den]=ss2tf(a,b,c,d,u)

[num,den]=ss2tf(A,B,C,D,1)

[例2.2] 从系统的传递函数(2-4)式求状态空间表达式。

num =[1 5 3];

den =[1 2 3 4];

[A,B,C,D]=tf2ss(num,den)

[例2.3] 对上述结果进行验证编程。

%将[例2.2]上述结果赋值给A、B、C、D阵;

A =[-2 -3 -4;1 0 0; 0 1 0]B =[1;0;0];C =[1 5 3];D=0;

[num,den]=ss2tf(A,B,C,D,1)

[例2.4]给定系统,求系统的零极点增益模型和状态空间模型,并求其单位脉冲响应及单位阶跃响应。

解:

num=[1 2 1 3];den=[1 0.5 2 1];

sys=tf(num,den) %系统的传递函数模型

Transfer function:

s^3 + 2 s^2 + s + 3

-----------------------------

s^3 + 0.5 s^2 + 2 s + 1

sys1=tf2zp(num,den) %系统的零极点增益模型sys1 =

sys2=tf2ss(sys) %系统的状态空间模型模型;或用[a,b,c,d]=tf2ss(num,den)形式

impulse(sys2) %系统的单位脉冲响应

step(sys2) %系统的单位阶跃响应

[例3.1] 对下面系统进行可控性、可观性分析。

解:

a=[-1 -2 2;0 -1 1;1 0 -1];b=[2 0 1]';c=[1 2 0]

Qc=ctrb(a,b) %生成能控性判别矩阵

rank(Qc) %求矩阵Qc的秩

ans = 3 %满秩,故系统能控

Qo=obsv(a,c) %生成能观测性判别矩阵

rank(Qo) %求矩阵Qo的秩

ans = 3 %满秩,故系统能观测

[例3.2] 已知系统状态空间方程描述如下:

试判定其稳定性,并绘制出时间响应曲线来验证上述判断。

解:

A=[-10 -35 -50 -24;1 0 0 0;0 1 0 0;0 0 1 0];

B=[1;0;0;0];C=[1 7 24 24];D=[0];

[z,p,k]=ss2zp(A,B,C,D,1);

Flagz=0;

n=length(A);

for i=1:n

if real(p(i))>0

Flagz=1;

end

end

disp('系统的零极点模型为');z,p,k

系统的零极点模型为

ifFlagz==1

disp('系统不稳定');

else disp('系统是稳定的');

end

运行结果为:

系统是稳定的

step(A,B,C,D)系统的阶跃响应

本文来源:https://www.2haoxitong.net/k/doc/3e2373e79b89680203d825bf.html

《Matlab 考题题整理 带答案.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式