文档库 最新最全的文档下载
当前位置:文档库 › Matlab 考题题整理 带答案

Matlab 考题题整理 带答案

Matlab 考题题整理 带答案
Matlab 考题题整理 带答案

产生一个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) B在A中的位置。

(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]写到文件里,写完后文件看起来是这样的

1 2 3 4 5 6 7 8 9

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

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

7. 将金牛股份(000937)2005年12月14日至2006年1月10日的交易记录保存到Excel中,编写程序将数据读入MATLAB中,进一步将数据读入Access数据库文件。

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

=[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 = , , ,

即: x=;y= ;z= ;w=

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

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

y=cos+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 = , , + , -

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

解:>>[X,Y]=meshgrid(-10 : :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、符号表达式中独立的符号变量为()。

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

)。

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

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

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

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

(1)创建符号函数

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

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

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

(5)求符号方程的解。

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

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

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

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

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

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

的MATLAB命令为

x=linprog(c,A,b,Aeq,beq,VLB,VUB)

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

问题补充:

卷子的地址

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

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

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

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

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

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

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

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

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

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

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

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

(1)创建符号函数 syms x

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

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

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

(5)求符号方程的解。

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

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

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

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

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

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

的MATLAB命令为

x=linprog(c,A,b,Aeq,beq,VLB,VUB)

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

[例] 已知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-4)式求状态空间表达式。

num =[1 5 3];

den =[1 2 3 4];

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

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

%将[例]上述结果赋值给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)

[例] 给定系统1

25.032)(2323++++++=s s s s s s s G ,求系统的零极点增益模型和状态空间模型,并求其单位脉冲响应及单位阶跃响应。

解:

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

sys=tf(num,den)

%系统的传递函数模型 Transfer function:

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

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

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

sys1=tf2zp(num,den)

%系统的零极点增益模型 sys1 = sys2=tf2ss(sys)

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

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

%系统的单位阶跃响应 [例] 对下面系统进行可控性、可观性分析。 解:

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 %满秩,故系统能观测

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

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

解:

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

系统的零极点模型为

if Flagz==1

disp('系统不稳定');

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

end

运行结果为:

系统是稳定的

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

资源与环境工程学院2008级硕士研究生《MatLab及其应用》试题注意,每题的格式均须包含3个部分

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

b. 运行过程:

c. 运行结果:

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

7 4

4

3

5

7 4

2

1

3 2

1

3

2

1

3

2

1

3

2

1

-

-

+

+

-

=

-

+

+

+

-

=

x,

x

x x

x

x

x

x

x

x

x .t.s

x

x

x

Z

min

问各x i分别取何值时,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 =

MIN z =

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

???≤≤<-≤=x x x x x x f 65.0620.251.525.0)(,,,,

并调用此函数,绘制曲线范围的,在2)()(2][0+?+=x f x f x 。(10分)

答:function y=f(x)

if x<=2

y=*x;

else if x>6

y=;

else y = end

end

运行结果 x=2

f(x)=1

x = 0::2;

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

plot(x,y);

xlabel('\bfx');

ylabel('\bfy');

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

π,,-∈x x (曲线图); ②4)y 2,-4x (-242),(22

22≤≤≤≤+=;y x y x f (曲面图)。

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

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

>> ylabel('y')

>>subplot(2,2,3)

>> x=-2::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 ,,a ,[a A n 11Λ=. 写一段程序,

找出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=,秸秆用量0.75g时,秸秆对铜的吸附量可达到6mg/g左右。

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

c,程序:x=[ ]

y=[ ]

plot(x,y);

xlabel('pH');

ylabel('吸附量')

图1

x=[ ]

y=[ ]

plot(x,y);

xlabel('秸秆用量g');

ylabel('吸附量')

图2

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

> x=[ 1 2 3 4 5 8 ]

y=[ ]

plot(x,y);

xlabel('时间t');

ylabel('时间/吸附量')

图3

x=[ ]

y=[ ]

plot(x,y);

xlabel('1/吸附量');

ylabel('1/平衡浓度')

图4

x=[ ]

y=[ ]

plot(x,y);

xlabel('Lg 吸附量');

ylabel('Lg 平衡浓度')

图5

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

[例] 已知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-4)式求状态空间表达式。

num =[1 5 3];

den =[1 2 3 4];

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

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

%将[例]上述结果赋值给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)

[例] 给定系统1

25.032)(2323++++++=s s s s s s s G ,求系统的零极点增益模型和状态空间模型,并求其单位脉冲响应及单位阶跃响应。

解:

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

sys=tf(num,den)

%系统的传递函数模型 Transfer function:

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

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

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

sys1=tf2zp(num,den)

%系统的零极点增益模型 sys1 = sys2=tf2ss(sys)

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

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

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

解:

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 %满秩,故系统能观测

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

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

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

系统的零极点模型为

if Flagz==1

disp('系统不稳定');

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

end

运行结果为:

系统是稳定的

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

matlab课后习题解答第二章

第2章符号运算 习题2及解答 1 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度” 对象,还是“符号”符号对象 3/7+; sym(3/7+; sym('3/7+'); vpa(sym(3/7+) 〖目的〗 不能从显示形式判断数据类型,而必须依靠class指令。 〖解答〗 c1=3/7+ c2=sym(3/7+ c3=sym('3/7+') c4=vpa(sym(3/7+) Cs1=class(c1) Cs2=class(c2) Cs3=class(c3) Cs4=class(c4) c1 = c2 = 37/70 c3 = c4 = Cs1 = double Cs2 = sym Cs3 = sym Cs4 = sym 2 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认 为是自由符号变量. sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)') 〖目的〗 理解自由符号变量的确认规则。 〖解答〗 symvar(sym('sin(w*t)'),1) ans = w symvar(sym('a*exp(-X)'),1)

ans = a symvar(sym('z*exp(j*th)'),1) ans = z 5求符号矩阵???? ??????=3332 31 232221 131211 a a a a a a a a a A 的行列式值和逆,所得结果应采用“子表达式置换”简洁化。 〖目的〗 理解subexpr 指令。 〖解答〗 A=sym('[a11 a12 a13;a21 a22 a23;a31 a32 a33]') DA=det(A) IA=inv(A); [IAs,d]=subexpr(IA,d) A = [ a11, a12, a13] [ a21, a22, a23] [ a31, a32, a33] DA = a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31 IAs = [ d*(a22*a33 - a23*a32), -d*(a12*a33 - a13*a32), d*(a12*a23 - a13*a22)] [ -d*(a21*a33 - a23*a31), d*(a11*a33 - a13*a31), -d*(a11*a23 - a13*a21)] [ d*(a21*a32 - a22*a31), -d*(a11*a32 - a12*a31), d*(a11*a22 - a12*a21)] d = 1/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31) 8(1)通过符号计算求t t y sin )(=的导数 dt dy 。(2)然后根据此结果,求- =0t dt dy 和2 π = t dt dy 。 〖目的〗 diff, limit 指令的应用。 如何理解运行结果。 〖解答〗 syms t

matlab课后答案解析完整版

ones表示1矩阵 zeros表示0矩阵 ones(4)表示4x4的1矩阵 zeros(4)表示4x4的0矩阵 zeros(4,5)表示4x5的矩阵 eye(10,10)表示10x10的单位矩阵 rand(4,5)表示4x5的伴随矩阵 det(a)表示计算a的行列式 inv(a)表示计算a的逆矩阵 Jordan(a)表示求a矩阵的约当标准块rank(a)表示求矩阵a的秩 [v,d]=eig(a)对角矩阵 b=a’表示求a矩阵的转置矩阵 sqrt表示求平方根 exp表示自然指数函数 log自然对数函数 abs绝对值 第一章 一、5(1) b=[97 67 34 10;-78 75 65 5;32 5 -23 -59]; >> c=[97 67;-78 75;32 5;0 -12]; >> d=[65 5;-23 -59;54 7]; >> e=b*c e = 5271 11574 -11336 664 1978 3112 (2)a=50:1:100 二、1 、x=-74; y=-27; z=(sin(x.^2+y.^2))/(sqrt(tan(abs(x+y)) )+pi) z = -0.0901 2、a=-3.0:0.1:3.0; >> b=exp(-0.3*a).*sin(a+0.3) 3、x=[2 4;-0.45 5]; y=log(x+sqrt(1+x.^2))/2

y = 0.7218 1.0474 -0.2180 1.1562 4、a*b表示a矩阵和b矩阵相乘 a.*b表示a矩阵和b矩阵单个元素相乘A(m,n)表示取a矩阵第m行,第n列 A(m,:)表示取a矩阵第m行的全部元素A(:,n)表示取a矩阵的第n列全部元素 A./B表示a矩阵除以b矩阵的对应元素, B.\A等价于A./B A.^B表示两个矩阵对应元素进行乘方运算 A.^2表示a中的每个元素的平方 A^2表示A*A 例:x=[1,2,3]; y=[4,5,6]; z=x.^y z= 1 3 2 729 指数可以是标量(如y=2).底数也可以是标量(如x=2) 5、a=1+2i; >> b=3+4i; >> c=exp((pi*i)/6) c = 0.8660 + 0.5000i d=c+a*b/(a+b) d = 1.6353 + 1.8462i 第二章 二、4、(1) y=0;k=0; >> while y<3 k=k+1; y=y+1/(2*k-1); end >> display([k-1,y-1/(2*k-1)]) ans =

matlab课后习题及答案详解

第1章 MATLAB概论 1.1与其他计算机语言相比较,MATLAB语言突出的特点是什么? MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。 1.2 MATLAB系统由那些部分组成? MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。 1.3 安装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习题及答案(2)

第1章MATLAB概论 1.1与其他计算机语言相比较,MA TLAB语言突出的特点是什么? MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。 1.2 MA TLAB系统由那些部分组成? MATLAB系统主要由开发环境、MA TLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。 1.3 安装MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装? 在安装MA TLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装。第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。 1.4 MA TLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上? 在MA TLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。 1.5 如何启动M文件编辑/调试器? 在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。 1.6 存储在工作空间中的数组能编辑吗?如何操作? 存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。 1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途? 命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。

matlab基础练习题(带答案)

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.如何理解“矩阵是MATLAB最基本的数据对象”? 答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。 因此,矩阵是MATLAB最基本、最重要的数据对象。 2.设A和B是两个同维同大小的矩阵,问: (1)A*B和A.*B的值是否相等? 答:不相等。 (2)A./B和B.\A的值是否相等? 答:相等。 (3)A/B和B\A的值是否相等? 答:不相等。 (4)A/B和B\A所代表的数学含义是什么? 答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵的逆左乘A矩阵,即inv(B)*A。 3.写出完成下列操作的命令。 (1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。 答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5]) (2)删除矩阵A的第7号元素。 答:A(7)=[] (3)将矩阵A的每个元素值加30。 答:A=A+30; (4)求矩阵A的大小和维数。 答:size(A); ndims(A); (5)将向量t的0元素用机器零来代替。 答:t(find(t==0))=eps; (6)将含有12个元素的向量x转换成34 矩阵。 答:reshape(x,3,4); (7)求一个字符串的ASCII码。 答:abs(‘123’); 或double(‘123’); (8)求一个ASCII码所对应的字符。 答:char(49);

4. 下列命令执行后,L1、L2、L3、L4的值分别是多少? A=1:9;B=10-A;... L1=A==B; L2=A<=5; L3=A>3&A<7; L4=find(A>3&A<7); 答:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0] L2的值为[1, 1, 1, 1, 1, 0, 0, 0, 0] L3的值为[0, 0, 0, 1, 1, 1, 0, 0, 0] L4的值为[4, 5, 6] 5. 已知 23100.7780414565532503269.5454 3.14A -????-??=????-?? 完成下列操作: (1) 取出A 的前3行构成矩阵B ,前两列构成矩阵C ,右下角32?子矩阵构 成矩阵D ,B 与C 的乘积构成矩阵E 。 答:B=A(1:3,:); C=A(:,1:2); D=A(2:4,3:4); E=B*C; (2) 分别求E=10&A<25)。 答:E=10&A<25)=[1; 5]。 6. 当A=[34, NaN, Inf, -Inf, -pi, eps, 0]时,分析下列函数的执行结果:all(A), any(A),isnan(A),isinf(A),isfinite(A)。 答:all(A)的值为0 any(A) 的值为1 isnan(A) 的值为[0, 1, 0, 0, 0, 0, 0] isinf(A) 的值为[0, 0, 1, 1, 0, 0, 0] isfinite(A) 的值为[1, 0, 0,0, 1, 1, 1]

matlab课后习题答案

第4章数值运算 习题 4 及解答 1 根据题给的模拟实际测量数据的一组t和)(t y试用数值差分diff 或数值梯度gradient指令计算)(t y'曲线绘制 y',然后把)(t y和)(t 在同一张图上,观察数值求导的后果。(模拟数据从prob_data401.mat获得) 〖目的〗 ●强调:要非常慎用数值导数计算。 ●练习mat数据文件中数据的获取。 ●实验数据求导的后果 ●把两条曲线绘制在同一图上的一种方法。 〖解答〗 (1)从数据文件获得数据的指令 假如prob_data401.mat文件在当前目录或搜索路径上 clear load prob_data401.mat (2)用diff求导的指令 dt=t(2)-t(1); yc=diff(y)/dt; %注意yc的长度将比y短1 plot(t,y,'b',t(2:end),yc,'r') (3)用gradent求导的指令(图形与上相似) dt=t(2)-t(1); yc=gradient(y)/dt;

plot(t,y,'b',t,yc,'r') grid on 〖说明〗 ● 不到万不得已,不要进行数值求导。 ● 假若一定要计算数值导数,自变量增量dt 要取得比原有数据相对误差高1、2个量级 以上。 ● 求导会使数据中原有的噪声放大。 2 采用数值计算方法,画出dt t t x y x ? =0 sin )(在]10 ,0[区间曲线,并计算)5.4(y 。 〖提示〗 ● 指定区间内的积分函数可用cumtrapz 指令给出。 ● )5.4(y 在计算要求不太高的地方可用find 指令算得。 〖目的〗 ● 指定区间内的积分函数的数值计算法和cumtrapz 指令。 ● find 指令的应用。 〖解答〗 dt=1e-4; t=0:dt:10; t=t+(t==0)*eps; f=sin(t)./t; s=cumtrapz(f)*dt; plot(t,s,'LineWidth',3) ii=find(t==4.5); s45=s(ii) s45 =

matlab练习题和答案

matlab练习题和答案 控制系统仿真实验 Matlab部分实验结果 目录 实验一 MATLAB基本操 作 ............................................................................................ 1 实验二 Matlab编程 .................................................................................................... 5 实验三Matlab底层图形控制 (6) 实验四控制系统古典分析.............................................................................................12 实验五控制系统现代分析 . (15) 实验六 PID控制器的设 计 ...........................................................................................19 实验七系统状态空间设计.............................................................................................23 实验九直流双闭环调速系统仿真 . (25) 实验一 MATLAB基本操作 1 用MATLAB可以识别的格式输入下面两个矩阵 1233,,1443678,i,,,,2357,,,,2335542,i,,,, A,1357B,,,2675342, i,,3239,,,,189543,,,,1894,, 再求出它们的乘积矩阵C,并将C矩阵的右下角2×3子矩阵赋给D矩阵。赋值完成后,调 用相应的命令查看MATLAB工作空间的占用情况。 A=[1,2,3,3;2,3,5,7;1,3,5,7;3,2,3,9;1,8,9,4];

matlab课后习题答案 (附图)

习题2.1 画出下列常见曲线的图形 y (1)立方抛物线3x 命令:syms x y; ezplot('x.^(1/3)') (2)高斯曲线y=e^(-X^2); 命令:clear syms x y; ezplot('exp(-x*x)') (3)笛卡尔曲线

命令:>> clear >> syms x y; >> a=1; >> ezplot(x^3+y^3-3*a*x*y) (4)蔓叶线 命令:>> clear >> syms x y; >> a=1 ezplot(y^2-(x^3)/(a-x)) (5)摆线:()()t sin- = , = - b y 1 t x cos t a 命令:>> clear >> t=0:0.1:2*pi; >> x=t-sin(t);

>>y=2*(1-cos(t)); >> plot(x,y) 7螺旋线 命令:>> clear >> t=0:0.1:2*pi; >> x=cos(t); >> y=sin(t); >> z=t; >>plot3(x,y,z) (8)阿基米德螺线

命令:clear >> theta=0:0.1:2*pi; >> rho1=(theta); >> subplot(1,2,1),polar(theta,rho1) (9) 对数螺线 命令:clear theta=0:0.1:2*pi; rho1=exp(theta); subplot(1,2,1),polar(theta,rho1) (12)心形线

命令:>> clear >> theta=0:0.1:2*pi; >> rho1=1+cos(theta); >> subplot(1,2,1),polar(theta,rho1) 练习2.2 1. 求出下列极限值 (1)n n n n 3 lim 3 +∞ → 命令:>>syms n >>limit((n^3+3^n)^(1/n)) ans = 3 (2))121(lim n n n n ++-+∞ → 命令:>>syms n >>limit((n+2)^(1/2)-2*(n+1)^(1/2)+n^(1/2),n,inf) ans = 0 (3)x x x 2cot lim 0 → 命令:syms x ;

MATLAB课后习题集附标准答案

第2章MATLAB概论 1、与其他计算机语言相比较,MA TLAB语言突出的特点是什么? 答:起点高、人机界面适合科技人员、强大而简易的作图功能、智能化程度高、功能丰富,可扩展性强. 2、MA TLAB系统由那些部分组成? 答:开发环境、MATLAB数学函数库、MATLAB语言、图形功能、应用程序接口 3、安装MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装? 答:在安装MATLAB时,安装内容由选择组件窗口中各复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装.第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可.矚慫润厲钐瘗睞枥庑赖。 4、MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上? 答:在MATLAB操作桌面上有五个窗口,在每个窗口的右下角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口称为独立的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面称为独立窗口,在独立窗口的view菜单中选择Dock,菜单项就可以将独立的窗口重新防止的桌面上. 5、如何启动M文件编辑/调试器? 答:在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动.在命令窗口中键入edit命令时也可以启动M文件编辑/调试器. 6、存储在工作空间中的数组能编辑吗?如何操作? 答:存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可.彈贸摄尔霁毙攬砖卤庑。 7、命令历史窗口除了可以观察前面键入的命令外,还有什么用途? 答:命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中.謀荞抟箧飆鐸怼类蒋薔。 8、如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别? 答:当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file菜单中的Set Path菜单项来完成.在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上.厦礴恳蹒骈時盡继價骚。 9、在MA TLAB中有几种获得帮助的途径? 答:(1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的MATLAB Help菜单项可以打开帮助浏览器.茕桢广鳓鯡选块网羈泪。 (2)help命令:在命令窗口键入“help”命令可以列出帮助主题,键入“help 函数名”可以得到鹅娅尽損鹌惨歷茏鴛賴。 指定函数的在线帮助信息. (3)lookfor命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给定关键词相关的命令和函数.籟丛妈羥为贍偾蛏练淨。 (4)模糊查询:输入命令的前几个字母,然后按Tab键,就可以列出所有以这几个字母开始的命令和函数. 注意:lookfor和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用help命令显示详细信息.預頌圣鉉儐歲龈讶骅籴。

Matlab习题与答案

实验二二维/三维数据的可视化 一、实验目的 熟悉掌握简单的图形绘制函数;掌握MATLAB常用的二维、三维图形及其他图形绘制函数的使用方法;熟悉图形句柄的使用。 二、实验环境 硬件环境:计算机一台 软件环境:Matlab 6.0 三、实验内容 作为一个功能强大的工具软件,Matlab具有很强的图形处理功能,提供了大量的二维、三维图形函数。由于系统采用面向对象的技术和丰富的矩阵运算,所以在图形处理方面即常方便又高效。 1、二维绘图 (1)plot函数 函数格式:plot(x,y) 其中x和y为坐标向量 函数功能:以向量x、y为轴,绘制曲线。 例1 在区间0≤X≤2 ,绘制正弦曲线Y=SIN(X),其程序为: x=0:pi/100:2*pi; y=sin(x); plot(x,y) 例2同时绘制正、余弦两条曲线Y1=SIN(X)和Y2=COS(X),其程序为:x=0:pi/100:2*pi; y1=sin(x); y2=cos(x); plot(x,y1,x,y2) plot函数还可以为plot(x,y1,x,y2,x,y3,…)形式,其功能是以公共向量x为X 轴,分别以y1,y2,y3,…为Y轴,在同一幅图内绘制出多条曲线。 例3 用不同线型和颜色重新绘制Y1=SIN(X)和Y2=COS(X),其程序为:x=0:pi/100:2*pi; y1=sin(x); y2=cos(x);

plot(x,y1,'go',x,y2,'b-.') 其中参数'go'和'b-.'表示图形的颜色和线型。g表示绿色,o表示图形线型为圆圈;b表示蓝色,-.表示图形线型为点划线。 在绘制图形的同时,可以对图形加上一些说明,如图形名称、图形某一部分的含义、坐标说明等,将这些操作称为添加图形标记。 title(‘加图形标题'); xlabel('加X轴标记'); ylabel('加Y轴标记'); text(X,Y,'添加文本'); 例4 在坐标范围0≤X≤2π,-2≤Y≤2内重新绘制正弦曲线,其程序为: x=linspace(0,2*pi,60);生成含有60个数据元素的向量X y=sin(x); plot(x,y); axis ([0 2*pi -2 2]);设定坐标轴范围 2、subplot函数 (1)subplot(m,n,p) 该命令将当前图形窗口分成m×n个绘图区,即每行n个,共m行,区号按行优先编号,且选定第p个区为当前活动区。 例5 在一个图形窗口中同时绘制正弦、余弦、正切、余切曲线,程序为:x=linspace(0,2*pi,60); y=sin(x); z=cos(x); t=sin(x)./(cos(x)+eps); eps为系统内部常数 ct=cos(x)./(sin(x)+eps); subplot(2,2,1); 分成2×2区域且指定1号为活动区 plot(x,y); title('sin(x)'); axis ([0 2*pi -1 1]); subplot(2,2,2); plot(x,z); title('cos(x)'); axis ([0 2*pi -1 1]); subplot(2,2,3); plot(x,t); title('tangent(x)'); axis ([0 2*pi -40 40]);

MATLAB-实用教程-课后习题答案

第二章 1.计算复数3+4i与5-6i的乘积。 a=3+4i b=5-6i c=a*b 2.构建结构体Students,属性包含Name、age和Email,数据包括{’Zhang’,18,[‘’,’]}、{’Wang’,21,[]}和{’Li’,[],[]},构建后读取所有Name属性值,并且修改’Zhang’的Age属性值为19。 Students(1).Age=18 Students(1).Email='','' : Students(2).Name='Wang' Students(2).Age=21 Students(2).Email=[] Students(3).Name='Li' Students(3).Age=[] Students(3).Email=[] Student(1).Age(1)=19 ' 3.用满矩阵和稀疏矩阵存储方式分别构造下属矩阵: A=[0 1 0 0 0;1 0 0 0 0;0 0 0 0 0;0 0 0 1 0] A=[0 1 0 0 0;1 0 0 0 0;0 0 0 0 0;0 0 0 1 0] S=sparse(A) S=sparse([2,1,4],[1,2,4],[1,1,1],4,5) 4.采用向量构造符得到向量[1,5,9....,41]. A=1:4:41 , 5.按水平和竖直方向分别合并下述两个矩阵:A=[1 0 0;1 1 0;0 0 1],B=[2 3 4;5 6 7;8 9 10] A=[1 0 0;1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] C=[A B] D=[A;B] 6.分别删除第五题两个结果的第2行。 A=[1 0 0;1 1 0;0 0 1] B=[2 3 4;5 6 7;8 9 10] ; C=[A B] D=[A;B] C(2,:)=[] D(2,:)=[]

matlab课后习题及答案详解

第2章 MATLAB 矩阵运算基础 2.1 在MA TLAB 中如何建立矩阵?? ? ???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 )时必须满足a 的列数等于b 的行数。 2.4 数组运算和矩阵运算的运算符有什么区别? 在加、减运算时数组运算与矩阵运算的运算符相同,乘、除和乘方运算时,在矩阵运算的运算符前加一个点即为数组运算,如a*b 为矩阵乘,a.*b 为数组乘。 2.5 计算矩阵??????????897473535与??? ? ? ?????638976242之和。 >> a=[5 3 5;3 7 4;7 9 8]; >> b=[2 4 2;6 7 9;8 3 6]; >> a+b ans = 7 7 7 9 14 13 15 12 14 2.6 求?? ? ? ??+-+-+-+-++=i 44i 93i 49i 67i 23i 57i 41i 72i 53i 84x 的共轭转置。 >> x=[4+8i 3+5i 2-7i 1+4i 7-5i;3+2i 7-6i 9+4i 3-9i 4+4i]; >> x’ ans = 4.0000 - 8.0000i 3.0000 - 2.0000i

matlab习题及答案

2.用MATLAB 语句输入矩阵A 和B 3.假设已知矩阵A ,试给出相应的MATLAB 命令,将其全部偶数行提取出来, 赋给B 矩阵,用magic(8)A =命令生成A 矩阵,用上述命令检验一下结果是不是正确。 4.用数值方法可以求出∑=++++++==63 63622284212i i S ,试不采用循环的 形式求出和式的数值解。由于数值方法是采用double 形式进行计算的,难以保证有效位数字,所以结果不一定精确。试采用运算的方法求该和式的精确值。 5.选择合适的步距绘制出下面的图形。 (1))/1sin(t ,其中)1,1(-∈t ; (2))tan(sin )sin(tan t t -,其中),(ππ-∈t 6.试绘制出二元函数2 2 2 2 )1(1)1(1),(y x y x y x f z +++ +-= =的三维图和三 视图 7.试求出如下极限。 (1)x x x x 1)93(lim +∞ →; (2)1 1lim 0-+→→xy xy y x ; (3)2 2)()cos(1lim 2 2 220 0y x y x e y x y x +→→++- 8.已知参数方程? ??-==t t t y t x sin cos cos ln ,试求出x y d d 和3 /2 2d d π=t x y 9.假设?-=xy t t e y x f 0 d ),(2 ,试求2222 22y f y x f x f y x ??+???-?? 10.试求出下面的极限。 (1)??????-++-+-+-∞→1)2(1 161141121lim 2222n n ; (2))131211( lim 2 222π πππn n n n n n n ++++++++∞ → 11.试求出以下的曲线积分。 (1)?+l s y x d )(22,l 为曲线)sin (cos t t t a x +=,)cos (sin t t t a y -=, )20(π≤≤t 。

MATLAB习题及答案3

1. 令[]153A =,[]214B =,[]915C =- (1) 求A 和B 的点积 (2) 求B 和C 的叉乘积 (3) 求A 、B 、C 的混和积 参考答案: >> A=[1,5,3]; >> B=[2,1,4]; >> C=[9,-1,5]; (1) >> dot(A,B) ans = 19 (2) >> cross(B,C) ans = 9 26 -11 (3) >> dot(A,cross(B,C)) ans = 106 2. 令2122A -??= ?--??,2304B -??= ?-??,12C ??= ???,1001D ?? = ??? 。求解下列问题: (1)2A ? (2)A B + (3)A B ? (4).*A B (5)B C ? (6)/A B (7)\A B 参考答案: >> A=[2,-1;-2,-2]; >> B=[2,-3;0,-4]; >> C=[1;2]; >> D=[1,0;0,1]; (1) >> 2*A ans = 4 -2 -4 -4 (2)

>> A+B ans = 4 -4 -2 -6 (3) >> A*B ans = 4 -2 -4 14 (4) >> A.*B ans = 4 3 0 8 (5) >> B*C ans = -4 -8 (6) >> A/B ans = 1.0000 -0.5000 -1.0000 1.2500 (7) >> A\B ans = 0.6667 -0.3333 -0.6667 2.3333 3. 9889 2747 6461 4074?? ? ? ? ??? 求该矩阵的特征值和特征向量 参考答案: >> X=[9,8,8,9;2,7,4,7;6,4,6,1;4,0,7,4] X = 9 8 8 9 2 7 4 7 6 4 6 1 4 0 7 4

matlab课后习题答案1到6章

习题二 1.如何理解?矩阵是MATLAB 最基本的数据对象?? 答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。 因此,矩阵是MATLAB最基本、最重要的数据对象。 2.设A和B是两个同维同大小 的矩阵,问: (1)A*B和A.*B的值是否 相等? 答:不相等。 (2) A./B和B.\A的值是 否相等? 答:相等。 (3)A/B和B\A的值是否 相等? 答:不相等。 (4)A/B和B\A所代表的 数学含义是什么? 答:A/B等效于B的逆右乘 A矩阵,即A*inv(B),而B\A 等效于B矩阵的逆左乘A矩 阵,即inv(B)*A。 3.写出完成下列操作的命令。 (1)将矩阵A第2~5行中第 1, 3, 5列元素赋给矩 阵B。 答:B=A(2:5,1:2:5); 或 B=A(2:5,[1 3 5]) (2)删除矩阵A的第7号元 素。 答:A(7)=[] (3)将矩阵A的每个元素值 加30。 答:A=A+30; (4)求矩阵A的大小和维 数。 答:size(A); ndims(A); (5)将向量t的0元素用 机器零来代替。 答:t(find(t==0))=eps; (6)将含有12个元素的向 量x转换成34 ?矩 阵。 答:reshape(x,3,4); (7)求一个字符串的ASCII 码。 答:abs(‘123’); 或 double(‘123’); (8)求一个ASCII码所对应 的字符。 答:char(49); 4.下列命令执行后,L1、L2、 L3、L4的值分别是多少? A=1:9;B=10-A;... L1=A==B; L2=A<=5; L3=A>3&A<7; L4=find(A>3&A<7); 答:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0] L2的值为[1, 1, 1, 1, 1, 0, 0, 0, 0] L3的值为[0, 0, 0, 1, 1, 1, 0, 0, 0] L4的值为[4, 5, 6] 5.已知 23100.7780 4145655 325032 69.5454 3.14 A - ?? ?? - ?? = ?? ?? - ?? 完成下列操作: (1)取出A的前3行构成矩 阵B,前两列构成矩阵 C,右下角32 ?子矩 阵构成矩阵D,B与C 的乘积构成矩阵E。 答:B=A(1:3,:); C=A(:,1:2); D=A(2:4,3:4); E=B*C; (2)分别求E=10&A<25)。 答:E=10&A<25)= [1; 5]。 6.当A=[34, NaN, Inf, -Inf, -pi, eps, 0]时,分析下列函数的执 行结果:all(A),any(A), isnan(A),isinf(A), isfinite(A)。 答:all(A)的值为0 any(A) 的值为1 isnan(A) 的值为[ 0, 1, 0, 0, 0, 0, 0] isinf(A) 的值为[ 0, 0, 1, 1, 0, 0, 0] isfinite(A) 的值为[1, 0, 0, 0, 1, 1, 1] 7.用结构体矩阵来存储5名学 生的基本情况数据,每名学生 的数据包括学号、姓名、专业 和6门课程的成绩。 答:student(1).id='0001'; student(1).name='Tom'; student(1).major='compu ter';

matlab习题解答

上机练习题一 班级: 姓名: 学号: 1.建立起始值=3,增量值=,终止值=44的一维数组x 答案: x=(3::44) 2.写出计算 Sin(30o )的程序语句. 答案: sin(pi*30/180) 或 sin(pi/6) 3.矩阵 ?? ?? ? ?????=187624323A ,矩阵 ?? ?? ? ?????=333222111B ;分别求出B A ?及A 与 B 中对应元素之间的乘积. 答案:A = [3,2,3; 4,2,6; 7,8,1] B = [1,1,1; 2,2,2; 3,3,3] A*B ;A.*B 4计算行列式的值1 876 24 323=A 。答案:det(A)

5对矩阵 ?? ?? ? ?????=187624323A 进行下述操作。 (1)求秩。答案:rank(A) (2)求转置。答案:A' (3) 对矩阵求逆,求伪逆。答案:inv(A) ,pinv(A) (4) 左右反转,上下反转。答案:fliplr(A),flipud(A) (5) 求矩阵的特征值. 答案:[u,v]=eig(A) (6) 取出上三角和下三角. 答案:triu(a) tril(a) (7)以A 为分块作一个3行2列的分块矩阵。答案:repmat(a) 6 计算矩阵 ???? ??????897473535与 ???? ? ?????638976242之和。 >> a=[5 3 5;3 7 4;7 9 8]; >> b=[2 4 2;6 7 9;8 3 6]; >> a+b 7 计算?? ????=572 396 a 与?? ????=864 142 b 的数组乘积。 >> a=[6 9 3;2 7 5]; >> b=[2 4 1;4 6 8]; >> a.*b ans = 12 36 3

相关文档