matlab课后答案解析完整版

合集下载

(完整版)MATLAB)课后实验答案[1]

(完整版)MATLAB)课后实验答案[1]

1 + e2 (2) z = 1 ln( x + 1 + x 2 ) ,其中 x = ⎡⎢ 2⎣-0.45 ⎦2 2 ⎪t 2 - 2t + 1 2 ≤ t <3 ⎨实验一MATLAB 运算基础1. 先求下列表达式的值,然后显示 MATLAB 工作空间的使用情况并保存全部变量。

(1) z = 2sin 8501221 + 2i ⎤5 ⎥(3) z = e 0.3a - e -0.3asin(a + 0.3) + ln 0.3 + a ,a = -3.0, - 2.9, L , 2.9, 3.03⎧t 2 0 ≤ t < 1 (4) z = ⎪t 2 - 11 ≤ t <2 ,其中 t=0:0.5:2.5 4⎩解:M 文件:z1=2*sin(85*pi/180)/(1+exp(2))x=[2 1+2*i;-.45 5];z2=1/2*log(x+sqrt(1+x^2))a=-3.0:0.1:3.0;3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2)t=0:0.5:2.5;z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3) .*(t.^2-2*t+1)4.完成下列操作:(1)求[100,999]之间能被21整除的数的个数。

(2)建立一个字符串向量,删除其中的大写字母。

解:(1)结果:m=100:999;n=find(mod(m,21)==0);length(n)ans=43(2).建立一个字符串向量例如:ch='ABC123d4e56Fg9';则要求结果是:ch='ABC123d4e56Fg9';k=find(ch>='A'&ch<='Z');ch(k)=[]ch=⎣O2⨯3⎥,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩S⎦阵和对角阵,试通过数值计算验证A=⎢⎥。

matlab课后习题答案

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转换成矩阵、答: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.已知完成下列操作:(1)取出A得前3行构成矩阵B,前两列构成矩阵C,右下角子矩阵构成矩阵D,B与C得乘积构成矩阵E。

matlab课后习题答案(附图)

matlab课后习题答案(附图)

matlab课后习题答案(附图)习题2.1画出下列常见曲线的图形y (1)⽴⽅抛物线3x命令:syms x y;ezplot('x.^(1/3)')(2)⾼斯曲线y=e^(-X^2);命令:clearsyms 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=1ezplot(y^2-(x^3)/(a-x))(5)摆线:()()tsin-=,=-by1命令:>> 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) 对数螺线命令:cleartheta=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.21. 求出下列极限值(1)nnn n3→命令:>>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 ;>> limit(x*cot(2*x),x,0) ans = 1/2 (4))(coslimcm xx ∞→命令:syms x m ; limit((cos(m/x))^x,x,inf) ans = 1(5))111(lim 1--→exx x命令:syms x>> limit(1/x-1/(exp(x)-1),x,1) ans =(exp(1)-2)/(exp(1)-1) (6))(2lim x x xx -+∞>> limit((x^2+x)^(1/2)-x,x,inf)ans = 1/2练习2.41. 求下列不定积分,并⽤diff 验证:(1)+x dxcos 1>>Clear >> syms x y >> y=1/(1+cos(x)); >> f=int(y,x) f =tan(1/2*x) >> y=tan(1/2*x); >> yx=diff(y ,x); >> y1=simple(yx) y1 =1/2+1/2*tan(1/2*x)^2 (2)+exdx1clear syms x yy=1/(1+exp(x));f=int(y,x) f =-log(1+exp(x))+log(exp(x)) syms x yy=-log(1+exp(x))+log(exp(x)); yx=diff(y,x); y1=simple(yx) y1 = 1/(1+exp(x)) (3)dx x x ?sin 2syms x yy=x*sin(x)^2; >> f=int(y,x) f =x*(-1/2*cos(x)*sin(x)+1/2*x)-1/4*cos(x)^2-1/4*x^2 clearsyms x y y=x*(-1/2*cos(x)*sin(x)+1/2*x)-1/4*cos(x)^2-1/4*x^2; yx=diff(y,x); >> y1=simple(yx) y1 = x*sin(x)^2 (4)xdx ?sec3syms x y y=sec(x)^3;f=int(y,x) f =1/2/cos(x)^2*sin(x)+1/2*log(sec(x)+tan(x)) clear syms x yy=1/2/cos(x)^2*sin(x)+1/2*log(sec(x)+tan(x)); yx=diff(y,x); y1=simple(yx) y1 =1/cos(x)^32. 求下列积分的数值解 1)dx x-10clearsyms xy=int(x^(-x),x,0,1) y =int(x^(-x),x = 0 .. 1) vpa(y,10) ans =1.291285997 2)xdx e x cos3202?πclearsyms xy=int(exp(2*x)*cos(x)^3,x, clear syms xy=int((1/(2*pi)^(1/2))*exp(-x^2/2),x,0,1) y =7186705221432913/36028797018963968*erf(1/2*2^(1/2))*2^(1/2)*pi^(1/0,2*pi) y =22/65*exp(pi)^4-22/65vpa(ans,10)(3)dx xe21221-π>> clear >> syms x>> y=int(1/(2*pi)^(1/2)*exp(-x^2/2),0,1); >> vpa(y,14) ans =.341344746068552(4)>> clear >> syms x>> y=int(x*log(x^4)*asin(1/x^2),1,3); Warning: Explicit integral could not be found. > In sym.int at 58 >> vpa(y,14) ans = 2.45977212823752(5) >> clear >> syms x1判断下列级数的收敛性,若收敛,求出其收敛值。

MATLAB)课后实验答案

MATLAB)课后实验答案

实验一 MATLAB 运算基础1、 先求下列表达式得值,然后显示MATLAB 工作空间得使用情况并保存全部变量。

(1) 0122sin 851z e =+(2) 21ln(2z x =+,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+=++=--L (4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0、5:2、5 解:4、 完成下列操作:(1) 求[100,999]之间能被21整除得数得个数。

(2) 建立一个字符串向量,删除其中得大写字母。

解:(1) 结果:(2)、 建立一个字符串向量 例如:ch='ABC123d4e56Fg9';则要求结果就是:实验二 MATLAB 矩阵分析与处理1、 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵与对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。

解: M 文件如下;5、 下面就是一个线性方程组:1231112340.951110.673450.52111456x x x ⎡⎤⎢⎥⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦(1) 求方程得解。

(2) 将方程右边向量元素b 3改为0、53再求解,并比较b 3得变化与解得相对变化。

(3) 计算系数矩阵A 得条件数并分析结论。

解: M 文件如下:实验三 选择结构程序设计1、 求分段函数得值。

2226035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其他用if 语句实现,分别输出x=-5、0,-3、0,1、0,2、0,2、5,3、0,5、0时得y 值。

matlab课后习题答案(1-9章)

matlab课后习题答案(1-9章)

1 数字1.5e2,1.5e3 中的哪个与1500相同吗?1.5e32 请指出如下5个变量名中,哪些是合法的?abcd-2xyz_33chan a 变量ABCDefgh 2、5是合法的。

3 在MATLAB 环境中,比1大的最小数是多少? 1+eps4 设 a = -8 , 运行以下三条指令,问运行结果相同吗?为什么?w1=a^(2/3) w2=(a^2)^(1/3) w3=(a^(1/3))^2w1 = -2.0000 + 3.4641i ;w2 = 4.0000 ;w3 =-2.0000 + 3.4641i 5 指令clear, clf, clc 各有什么用处?clear 清除工作空间中所有的变量。

clf 清除当前图形。

clc 清除命令窗口中所有显示。

第二章1 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号”符号对象?3/7+0.1双; sym(3/7+0.1)符; sym('3/7+0.1') 符;; vpa(sym(3/7+0.1)) 符;2 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认为是自由符号变量. sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)') symvar(sym('sin(w*t)'),1) w a z3 (1)试写出求三阶方程05.443=-x 正实根的程序。

注意:只要正实根,不要出现其他根。

(2)试求二阶方程022=+-a ax x 在0>a 时的根。

(1)reset(symengine)syms x positive solve(x^3-44.5) ans =(2^(2/3)*89^(1/3))/2(2)求五阶方程022=+-a ax x 的实根 syms a positive %注意:关于x 的假设没有去除 solve(x^2-a*x+a^2)Warning: Explicit solution could not be found. > In solve at 83 ans =[ empty sym ]syms x clear syms a positivesolve(x^2-a*x+a^2) ans =a/2 + (3^(1/2)*a*i)/2 a/2 - (3^(1/2)*a*i)/24 观察一个数(在此用@记述)在以下四条不同指令作用下的异同。

matlab课后习题及答案详解

matlab课后习题及答案详解

matlab课后习题及答案详解第1章练习题1.安装matlab时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装matlab时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即matlab选项)必须安装。

第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。

2.matlab操作方式桌面存有几个窗口?如何并使某个窗口瓦解桌面沦为单一制窗口?又如何将瓦解过来的窗口再次置放至桌面上?与其他计算机语言相比较,matlab语言注重的特点就是什么?matlab系统由那些部分共同组成?在matlab操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的close按钮,一个是可以使窗口成为独立窗口的undock按钮,点击undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择dock……菜单项就可以将独立的窗口重新防止的桌面上。

matlab具备功能强大、使用方便、输出简便、库函数多样、开放性弱等特点。

matlab系统主要由开发环境、matlab数学函数库、matlab语言、图形功能和应用程序接口五个部分组成。

3.如何设置当前目录和搜寻路径,在当前目录上的文件和在搜寻路径上的文件存有什么区别?命令历史窗口除了可以观测前面键入的命令外,除了什么用途?当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file菜单中的setpath菜单项来完成。

在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被matlab运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。

命令历史窗口除了用作查阅以前键入的命令外,还可以轻易执行命令历史窗口中选取的内容、将选取的内容拷贝到剪贴板中、将选取内容轻易拷贝到m文件中。

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

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

MATLAB-实用教程-课后习题标准答案第二章1.计算复数3+4i与5-6i的乘积。

a=3+4ib=5-6ic=a*b2.构建结构体Students,属性包含Name、age和Email,数据包括{’Zhang’,18,[‘’,’’]}、{’Wang’,21,[]}和{’Li’,[],[]},构建后读取所有Name属性值,并且修改’Zhang’的Age 属性值为19。

Students(1).Age=18Students(1).Email='',''Students(2).Name='Wang'Students(2).Age=21Students(2).Email=[]Students(3).Name='Li'Students(3).Age=[]Students(3).Email=[]/doc/805835364.html,Student(1).Age(1)=19Student.Age3.用满矩阵和稀疏矩阵存储方式分别构造下属矩阵: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:415.按水平和竖直方向分别合并下述两个矩阵:A=[1 0 0;1 1 0;0 01],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,:)=[]7.分别将第5题两个结果的第2行最后3列的数值改为[11 12 13]。

《MATLAB》课后习题答案

《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 。

matlab课后习题解答

matlab课后习题解答
end
Amin=A(1);
Amax=A(1);
fori=1:19
ifA(i+1)>Amax
Amax=A(i+1);
end
ifA(i+1)<Amin
Amin=A(i+1);
end
end
Amax=max(A)
Amin=min(A)
第五题
sum=1;
fori=1:63
sum=sum+2^i;
end
s=sum;
A(5).x1=’学号’;A(5).x2=’姓名’;A(5).x3=’专业’;A(5).x4.x41=’成绩1’;……….
8、建立单元矩阵B并回答有关问题。
>> B={1;'Brenden';reshape(1:9,3,3);[12,34,2;54,21,3;4,23,67]};
>> size(B)
m1=fix(x/1000);
m2=fix((x-m1*1000)/100);
m3=fix((x-m1*1000-m2*100)/10);
m4=rem(x,10);
m1=rem((m1+7),10);
m2=rem((m2+7),10);
m3=rem((m3+7),10);
m4=rem((m4+7),10);
Size(A) ndims(A)
(5)、将向量t的0元素用机器零代替。
t=eps
(6)、将含有12个元素的向量x转换成3*4矩阵。
Reshape(x,3,4)
(7)、求一个字符串的ASCII码。
double( )
(8)、求一个ASCII码所对应的字符。

matlab课后答案完整版

matlab课后答案完整版

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*ce =5271 11574-11336 6641978 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.09012、a=-3.0:0.1:3.0;>> b=exp(-0.3*a).*sin(a+0.3)y =0.7218 1.0474-0.2180 1.15624、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./BA.^B表⽰两个矩阵对应元素进⾏乘⽅运算A.^2表⽰a中的每个元素的平⽅A^2表⽰A*A例:x=[1,2,3];y=[4,5,6];z=x.^yz=1 32 729指数可以是标量(如y=2).底数也可以是标量(如x=2)5、a=1+2i;>> b=3+4i;>> c=exp((pi*i)/6)c =0.8660 + 0.5000id=c+a*b/(a+b)d =1.6353 + 1.8462i第⼆章⼆、4、(1)y=0;k=0;>> while y<3k=k+1;>> display([k-1,y-1/(2*k-1)])ans =56.0000 2.9944第三章⼆1(1) x=0:pi/10:2*pi; >> y=x-x.^3/6; >> plot(x,y)1234567-40-35-30-25-20-15-10-505(2)x=0:pi/10:2*pi; y=(exp(-x.^2/2))/2*pi;plot(x,y)012345670.20.40.60.811.21.41.6(3)x=-8:0.01:8; y=sqrt((64-x.^2)/2);plot(x,y)-8-6-4-2024680123456(4)t=0:0.1:8*pi; >> x=t.*sin(t); >> y=t.*cos(t);-25-20-15-10-50510152025-30-20-10102030例3.4x=0:pi/100:2*pi; y1=exp(-0.5*x);y2=exp(-0.5*x).*sin(2*x); plot(x,y1,x,y2)>> title('x from 0 to 2{\pi} '); >> xlabel('variable x'); >> ylabel('variable y'); >> text(1.5,0.5,'曲线y1=e^(-0.5x)'); >> text(3,0.1,'曲线y2=cos(4{\pi}x)e^{-0.5x}'); >> legend('y1','y2')1234567-0.4-0.20.20.40.60.81x from 0 to 2πvariable xv a r i a b l e y曲线y1=e (-0.5x)曲线y2=cos(4πx)e -0.5xy1y22、(1)y1=2*x-0.5;t=linspace(0,pi,100); x=sin(3*t).*cos(t); y=sin(3*t).*sin(t);>> k=find(abs(y-x)<1e-2); >> t1=t(k) t1 =0 0.7933 1.04722.0944>> z=sin(3.*(t1)).*cos(t1) z =0 0.4841 0.0000 0.0000 -0.0000>> plot(t,x,t,y,'k:',t1,z,'bp');0.511.522.533.5-1-0.8-0.6-0.4-0.200.20.40.60.81(2)subplot(1,2,1); >> scatter(x1,y1,10); >> title('y=2x-0.5'); >> subplot(1,2,2); >> scatter(x,y,10)-1-0.8-0.6-0.4-0.200.20.40.60.81-1-0.8-0.6-0.4-0.200.20.40.63、subplot(1,2,1); x=0:0.01:pi; y=sin(1./x); plot(x,y)subplot(1,2,2);fplot('sin(1./x)',[1,100])1234-1-0.8-0.6-0.4-0.200.20.40.60.81204060801000.10.20.30.44、t=0:pi:2*pi; y=1./(1+exp(-t));subplot(2,2,1);%图形窗⼝的分割bar(t,'group'); %绘制柱形图(分组) subplot(2,2,2);barh(t,'stack');%绘制柱形图(堆积) subplot(2,2,3);loglog(t,y); %函数使⽤全对数坐标,x,y 均采⽤常⽤对数刻度 subplot(2,2,4); semilogy(t,y); %函数使⽤半对数坐标,y 轴为常⽤对数刻度,x 轴仍为线性刻度1230246802468123100.5100.710-0.01810-0.0010246810-0.310-0.210-0.15、(1)theta=linspace(-pi,pi,100); ro=5.*cos(theta)+4; polar(theta,ro); (2)x=linspace(0,2*pi,100);a=1>> r=a.*(1+cos(x)); polar(x,r);3021060240902701203001503301806、(1)t=0:pi/10:2*pi;>> x=exp((-t)/20).*cos(t); >> y=exp((-t)/20).*sin(t); >> z=t; >> plot3(x,y,z);-1-0.50.51-1-0.50.5102468(2)t=0:0.01:1; x=t;>> y=t.^2; >> z=t.^3;>> plot3(x,y,z);0.20.40.60.800.20.40.60.817、x=-30:0.1:0; >> y=0:0.1:30;>> [x,y]=meshgrid(x,y); >>z=10.*sin(sqrt(x.^2+y.^2))./sqrt(1+x.^2+y.^2);>> meshc(x,y,z);绘制曲⾯图和等⾼线-30-20-10102030-4-202468、x=linspace(-3,3,100); >> y=linspace(-3,3,100); >> [x y]=meshgrid(x,y); %可以将向量转化为矩阵 >> fxy=-5./(1+x.^2+y.^2); >> i=find(abs(x)<=0.8 & abs(y)<=0.5); >> fxy(i)=NaN; >>surf(x,y,fxy) %绘制三维曲⾯图-4-224-4-224-4-3-2-19、u=linspace(1,10,100); v=linspace(-pi,pi,100);[u v]=meshgrid(u,v); x=3.*u.*sin(v); y=2.*u.*cos(v); z=4*u.^2; surf(x,y,z); shading interp;-40-20-1010200100200300400第五章⼆1、a=rand(1,30000);mean(a) %求平均数 ans =0.5010 >>b=std(a) %求标准差 b =0.2882 >> c=max(a) c =0.9999 >> d=min(a) d =3.5706e-005size(find(a>0.5))/size(a) %求⼤于0.5的随机数个数占总数的百分⽐ans =0.50322、h=[466,715,950,1422,1635]; >> w=[7.04,4.28,3.40,2.52,2.13]; >> hh=[500,900,1500]; >> ww=interp1(h,w,hh,'spline')ww =6.4903 3.5226 2.3845 3、x=linspace(1,10,50); y=log(x);f=polyfit(x,y,5); %求曲线的拟合 >> yy=polyval(f,x); >> plot(x,y,'r-',x,yy,'g.') 123456789100.511.522.55、(1)、(2) p1=[1,2,0,7]; p2=[1,-2]; p3=[1,0,5,1]; p12=conv(p1,p2); >>p=p12+[zeros(1,size(p12,2)-size(p3,2)),p3]; >> roots(p) ans =-3.4656 0.6128 + 1.6278i 0.6128 - 1.6278i 1.2400-29 291 95 19 -3 697 -13 697 1427 >>y2=polyvalm(p,a)%以矩阵a 为⾃变量 y2 =391 2084 3273 502 2693 4207 720 3775 5892 6、(1)z=fzero('3*x-sin(x)+1',0) %求x=0时附近的根 z =-0.4903 第⼋章⼆、2t=0:pi/20:2*pi; x=sin(t); y=cos(t); x1=sin(7*t); y1=cos(7*t);h=plot(x,y,x1,y1);set(h,'marker','x','linewidth',2); set(gca,'xtick',-1:0.1:1); title('篮筐')-1-0.9-0.8-0.7-0.6-0.5-0.4-0.3-0.2-0.100.10.20.30.40.50.60.70.80.91 -1-0.8-0.6-0.4-0.200.20.40.60.81篮筐3、x=0:pi/10:5*pi;y=exp(-0.2*x).*cos(x)+2; h=plot(x,y);set(gca,'color','red','linestyle','-','linewidth',3);text(5,2.4,'y=exp(-0.2*x).*cos(x)+2');02468101214161.41.61.822.22.42.62.83y=exp(-0.2*x).*cos(x)+24、t=-pi:pi/100:pi; x=cos(t); y=sin(t); z=t;h=plot(t,x,t,y,t,z);set(h,'linestyle','-','linewidth',3);-4-3-2-101234-4-3-2-101234字符串例ch='Welcome to Beijing';subch=ch(12:18) 选12~18个字符串(空格也算)ans =WELCOME TO BEIJING >> length(k)统计⼩写字母的个数ans = 14 例:已知y=1-1/2+1/3-1/4.........-1/100求y 的值y=0; >> n=100; >> for i=1:100; y=y+(-1)^(i-1)/i; end>> disp(y)0.6882绘制⼆维曲线图x=0:pi/100:2*pi; >> y1=0.2*exp(-0.5*x).*cos(4*pi*x); >> y2=1.5*exp(-0.5*x).*cos(pi*x); >> plotyy(x,y1,x,y2); 7-0.20.20123456-202绘制三维图像例:x=sint+tcost y=cost-tsint z=tt=0:pi/10:10*pi; x=sin(t)+t.*cos(t); y=cos(t)-t.*sin(t); z=t; plot3(x,y,z); axis([-30 30 -30 30 0 35]); 坐标轴的最⼤值与最⼩值title('line in 3-D space'); 图形的题⽬ >> xlabel('x');ylabel('y');zlabel('z'); 标注坐标>> grid on; 加⽹格线 -30-20-10102030-20205101520253035xline in 3-D spaceyz三维例]2/,0[],,0[,cos sin 22ππ∈∈+=y x y x z [x,y]=meshgrid(0:pi/100:pi,0:pi/100:pi/2);>> z=sin(x.^2)+cos(y.^2);>> mesh(x,y,z);>> axis([0 4 0 1.8 -1.5 1.5]); 012340.511.5-1.5-1-0.500.511.5例3.16t=0:pi/20:2*pi; subplot(1,2,1);[x,y,z]=cylinder(sin(t),30);surf(x,y,z); 绘制三维曲⾯图subplot(1,2,2);>> [x,y,z]=peaks(100);>> mesh(x,y,z); 绘制三维⽹格图-11-10100.20.40.60.81-55-505-10-5510多项式求导例:f(x)=1/x^2+5 p=[1];>> q=[1,0,5];>> [p,q]=polyder(p,q)注:c=conv(a,b) 表⽰a 多项式与b 多项式乘积[p,r]=deconv(a,b) 表⽰a 多项式与b 多项式相除其中p 为商向量 r 为余数向量p=polyder(p) 表⽰求p 的导数 p=poleder(p,q) 表⽰求p 乘以q 的导数[p,q]=poleder(p,q) 表⽰p 除以q 的导数多项式求根例:f(x)=2x^4-12x^3+3x^2+5 p=[2,-12,3,0,5]; >> x=roots(p); >> p=[2,-12,3,0,5]; x=roots(p) 求⽅程f(x)=0的根 x =5.7246 0.8997 -0.3122 + 0.6229i -0.3122 - 0.6229i>> g=poly(x) 已知多项式的根求多项式 g =1.0000 -6.0000 1.5000 -0.00002.5000符号求导例7.3x=a(t-tsint)y=b(1-cost) 求y 对x 的⼀阶导数 syms x y a b t;>> f21=a*(t-sin(t)); >> f22=b*(1-cos(t));>> diff(f22)/diff(f21) 求y 对x 的⼀阶导数ans =b*sin(t)/a/(1-cos(t))注:diff(f1,x,2) 表⽰f1对x 的⼆阶导数diff (f3,x )表⽰z 对x 的偏导 diff (f3,y )表⽰z 对y 的偏导求不定积分int(f) 求f 的不定积分 f1=int(f,a,b) 求f 在a ,b 之间的定积分eval (f1)计算积分值符号求极限例7.2 syms x h>> f=(sin(x+h)-sin(x))/h;>> limit(f,h,0) h 趋向于0ans =cos(x)例2f=sym('(1+t/x)^x');limit(f,inf) f趋向于⽆穷ans =exp(t)例3f=sym('x*(sqrt(x^2+1)-x)');limit(f,sym('x'),inf,'left') x 趋向于正⽆穷ans =1/2⼤⼩写ch='Welcome to Beijing';subch=ch(12:18)subch =Beijing>> k=find(ch>='A'&ch<='Z'); ch(k)=ch(k)-('A'-'a');>> char(ch)ans =welcome to beijing>> length(k)ans =2。

MATLAB 课后部分答案

MATLAB 课后部分答案

P77 第2章1、>> x=2;>> y=power(x,3)+(x-0.98).^2./(x+1.35).^3-5*(x+1./x)>> x=4;>> y=power(x,3)+(x-0.98).^2./(x+1.35).^3-5*(x+1./x)7、>> mat=rand(4,5);>> m=1;>> for i=1:2for j=1:5if mat(i,j)>0.3b(m)=mat(i,j);m=m+1;endendend>> b8、>> V=inv(A)>> A=rand(5,5);10、>> A=[1 4 8 13;-3 6 -5 -9;2 -7 -12 -8];B=[5 4 3 -2;6 -2 3 -8;-1 3 -9 7]; >> C=A*B??? Error using ==> mtimesInner matrix dimensions must agree.>> C=A.*BC =5 16 24 -26-18 -12 -15 72-2 -21 108 -5611、>> x=linspace(0,2*pi,125);>> y=cos((x).*(0.5+3*sin(x)./(1+x.^2)));>> plot(x,y)13、>> x=-2:0.1:2;y=-2:0.1:2;>> [X,Y]=meshgrid(x,y);>> Z=X.^2.*exp(-X.^2-Y.^2);>> mesh(Z)建立一个M函数文件mycos.m,程序如下:function y=mycos(x)clear allx=input('请输入x的值')y=1./((x-2).^2+0.1)+1./((x-3).^3+0.01)在命令窗口输入:mycosP123 第3章1、>> x=[446 714 950 1422 1634];y=[7.04 4.28 3.40 2.54 2.13];>> xi=500:500:1500;>> yi=interp1(x,y,xi,'linear')4、>> p=[3 4 7 2 9 12];>> roots(p)8、>> a=[2 4 9;4 2 4;9 4 18];>> [V,D]=eig(a) %V的列向量是相应的特征向量,对角阵D的对角元素为a的特征值10、>> p1=[-1 4 0];p2=[-1 -4 0];>> A=polyder(p1);B=polyder(p2);>> A1=roots(A);B1=roots(B);>> y=4*A1-4*B1-A1.^2-B1.^213、>> syms x y>> Ex=int(int(x.*12.*y.^2,y,0,x),x,0,1)>> Ey=int(int(y.*12.*y.^2,x,y,1),y,0,1)>> Exy=Ex.*Ey14、>> A=rand(4,4);>> [L,U]=lu(A)>> [Q,R]=qr(A)P183 第4章1、>> n=-2*pi:0.01:2*pi;>> N=12;x=cos(n*pi./6);>> X=fft(x,N)>> nx=((n>=0)&(n<=11)); hx=((n>=0)&(n<=5)); >> xn=0.8*nx;hn=hx;>> y=conv(xn,hn)4、>> n=0:11;h=0:5;>> nx=((n>=0)&(n<=11)); hx=((n>=0)&(n<=5)); >> xn=0.8*nx;hn=hx;>> M=length(xn);N=length(hn);>> L=pow2(nextpow2(M+N-1));>> Xk=fft(xn,L);Hk=fft(hn,L);>> Yk=Xk.*Hk;>> yn=ifft(Yk,L)5、>> num=[2 3 0];den=[1 0.4 1];>> [z,p,k]=tf2zp(num,den)6、>> num=[4 15.6 6 2.4 -6.4];den=[3 2.4 6.3 -11.4 6]; >> [z,p,k]=tf2zp(num,den)>> zplane(z,p)7、>> num=[18 0 0 0];den=[18 3 -4 -1];>> [r,p,k]=residuez(num,den)9、建立一个M函数文件,程序如下:clear allN=10;[z,p,k]=buttap(N);[A,B,C,D]=zp2ss(z,p,k);wc1=100;wc2=200;[At,Bt,Ct,Dt]=lp2bp(A,B,C,D,wc1,wc2);[num1,den1]=ss2tf(At,Bt,Ct,Dt);[num2,den2]=impinvar(num1,den1);dimpulse(num2,den2)10、建立一个M函数文件,程序如下:clear allwp=100*2*pi;ws=200*2*pi;Rp=2;Rs=15;Fs=500;[N,Wc]=buttord(wp,ws,Rp,Rs,'s'); %选择滤波器的最小阶数[z,p,k]=buttap(N);[B,A]=zp2tf(z,p,k);[num,den]=bilinear(B,A,Fs); %模拟滤波器的传递函数转换为数字滤波器的传递函数freqz(num,den)11、建立一个M函数文件,程序如下:clear allN=48;w=[0.35,0.65];B=fir1(N,w,'bandpass'); %返回一个N阶的带通滤波器freqz(B) %绘制滤波器的频率响应曲线12、建立一个M函数文件,程序如下:clear allN=37;wc=0.3*pi;B=fir1(N,wc);freqz(B) %绘制滤波器的频率响应曲线13、建立一个M函数文件,程序如下:clear allN=55;F=[0:1/55:1];A=[ones(1,28),zeros(1,N-27)];B=fir2(N,F,A);freqz(B) %绘制滤波器的频率响应曲线15、建立一个M函数文件,程序如下:clear allwc=0.4*pi/(2*pi);N=12;[B,A]=butter(N,wc);%设计N阶截止频率为wc的Butterworth低通数字滤波器的传递函数模型m=dimpulse(B,A,101);stem(m,'.')P277 第6章2、建立一个M函数文件,程序如下:function [h,l]=huffmancode(P)if length(find(P<0))~=0,error('Not a prod.vector')endif abs(sum(P)-1)>10e-10error('Not a prod.vector')endn=length(P);for i=1:n-1for j=i:nif P(i)<=P(j)p=P(i);P(i)=P(j);P(j)=p;endendenddisp('概率分布'),PQ=P;m=zeros(n-1,n);for i=1:n-1[Q,l]=sort(Q);m(i,:)=[l(1:n-i+1),zeros(1,i-1)];Q=[Q(1)+Q(2),Q(3:n),1];endfor i=1:nc(i,:)=blanks(n*n);endc(n-1,n)='0';c(n-1,2*n)='1';for i=2:n-1c(n-i,1:n-1)=c(n-i+1,n*(find(m(n-i+1,:)==1))-(n-2):n*(find(m(n-i+1,:)==1)));c(n-1,n)='0';c(n-i,n+1:2*n-1)=c(n-i,1:n-1);c(n-i,2*n)='1';for j=1:i-1c(n-i,(j+1)*n+1:(j+2)*n)=c(n-i+1,n*(find(m(n-i+1,:)==j+1)-1)+1:n*find(m(n-i+1,:)==j+1));endendfor i=1:nh(i,1:n)=c(1,n*(find(m(1,:)==i)-1)+1:find(m(1,:)==i)*n);ll(i)=length(find(abs(h(i,:))~=32));endl=sum(P.*ll); %计算平均码长在命令窗口中输入:>> P=[0.20 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.06];>> [h,l]=huffmancode(P)3、建立一个M函数文件,程序如下:function[sqnr,a_quan,code]=u_pcm(a,n)% U_PCM 一个序列均匀的PCM编码.% n=量化级数的数目(偶数).% sqnr=输入信号量化噪声比(偶数)。

matlab课后习题解答第二章

matlab课后习题解答第二章

第2章符号运算习题2及解答1 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号”符号对象?3/7+0.1; sym(3/7+0.1); sym('3/7+0.1'); vpa(sym(3/7+0.1))〖目的〗●不能从显示形式判断数据类型,而必须依靠class指令。

〖解答〗c1=3/7+0.1c2=sym(3/7+0.1)c3=sym('3/7+0.1')c4=vpa(sym(3/7+0.1))Cs1=class(c1)Cs2=class(c2)Cs3=class(c3)Cs4=class(c4)c1 =0.5286c2 =37/70c3 =c4 =Cs1 =doubleCs2 =symCs3 =symCs4 =sym2 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认为是自由符号变量.sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)')〖目的〗●理解自由符号变量的确认规则。

〖解答〗symvar(sym('sin(w*t)'),1)ans =wsymvar(sym('a*exp(-X)'),1)ans =asymvar(sym('z*exp(j*th)'),1) ans = z5求符号矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=333231232221131211a 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 )(=的导数dtdy。

MATLAB程序设计和应用课后习题答案解析

MATLAB程序设计和应用课后习题答案解析

西安科技大学MATLAB程序设计专业:信息与计算科学班级:1001班学号:1008060129姓名:刘仲能2012年6月27日实验一2.已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=76538773443412A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=723302131B 求下列表达式的值:(1)A+6*B 和A-B+I (其中I 为单位矩阵) (2)A*B 和A.*B (3)A^3和A.^3 (4)A/B 及B\A(5)[A,B]和[A([1,3],:);B^2]3.设有矩阵A 和B ⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=25242322212019181716151413121110987654321A ,⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡--=11134079423096171603B (1) 求它们的乘积C 。

(2) 将矩阵C 的右下角3×2子矩阵赋给D 。

(3) 查看MATLAB 工作空间的使用情况(1) (2)(3)4.完成下列操作(1)求[100,999]之间能被21整除的数的个数。

(2)建立一个字符串向量,删除其中的大写字母。

(1)(2)实验二3.建立一个5×5矩阵,求它的行列式值、迹、秩和范数。

运行截图:A 矩阵的行列式值、迹、秩分别如下:范数如下:4.已知 ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=5881252018629A 求A 的特征值及特征向量,并分析其数学意义。

运行截图:5.下面是一个线性方程组:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡52.067.095.06/15/14/15/14/13/14/13/12/1321x x x (1) 求方程的解; (2) 将方程右边向量元素改为0.53,在求解,并比较的变化和解的相对变化;(3) 计算系数矩阵A 的条件数并分析结论。

(2) 变大,其解中,相对未变化前的的解:x1变大,x2变小,x3变大。

(3)由于A 矩阵的条件数很大,故当线性方程组中的b 变大时,x 也将发生很大的变化,即数值稳定性较差。

matlab课后习题参考答案

matlab课后习题参考答案

Matlab课后习题部分参考答案习题二2.student=struct('name',{'zhang','wang','li'},'age',{18,21,[] },'email',{['zh ang@','zhang@'],'',''})5、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 =1 0 023 41 1 0 5 6 70 0 1 8 9 10d =1 0 01 1 00 0 12 3 45 6 78 9 1010、reshape(c,2,9)1 0 1 0 1 5 3 9 71 0 0 02 8 6 4 10 reshape(d,2,9)ans =1 0 5 0 0 6 0 1 71 2 8 1 3 9 0 4 10 (注意:重新排列矩阵,是将原来的矩阵按列排序)11、a.’12、a+b a.*ba\b (即inv(a)*b,考试时,要求能自己手算出a的逆)ans =2 3 43 3 38 9 1013、c=4*ones(3);a>=cb>=c14.strcat('The picture is ','very good')a=['The picture is ','very good']18.double('very good')1.norm(A),det(A),rank(A)2.b=[1 1 1 1 1];c=b';a=[17,24,1,8,50;23,5,7,14,49;4,6,13,20,43;10,12,19,21,62;11,18,25,2,56]; x=a\c习题四1、a=14*rand(1,10)-5;for i=1:9max=i;for j=i+1:10if a(j)>a(max)max=j;endendtemp=a(i);a(i)=a(max);a(max)=temp;enda将上述脚本保存为script41.m2、function y=function42(n)3*randn(1,n)+3;for i=1:n-1max=i;for j=i+1:nif a(j)>a(max)max=j;endendtemp=a(i);a(i)=a(max);a(max)=temp;endy=a;将上述函数保存为function42.m 3、r=input(‘please input 1/2: ’);if r= =1script41;elsen=input(‘please input the length: ’);y=funtion42(n);end4.function f=function1(x,y)if y==1f=sin(x);elseif y==2f=cos(x);elsef=sin(x).*cos(x);end在命令窗口调用函数f=function1(1,3) 5.function result=function3(x,n)result=0;for i=1:nresult=result+sin(x.*i)+(-1).^i.*cos(i.*x); endfunction result=function4(n,t)result=0;A=[1 2 3;0 1 2;0 0 1];for i=1:nresult=result+A*i.*exp(A*i.*t);end习题五3.x1=-2:0.01:2;x2=-2:0.01:2;y1=x1.*sin(x2);y2=x2.*cos(x1);plot3(x1,x2,y 1,'-d',x1,x2,y2,'-d')14、x=8*rand(1,100)-2;y=reshape(x,10,10);save mydata.mat yclearclcload mydatak=y>ones(10);totel=0;for i=1:100if k(i)==1totel=totel+1;endend15、x=rand(5); %生成5*5均匀分布的随机矩阵(该处只作举例,未按题目要求)fid=fopen(‘text.txt’,’w’);count=fwrite(fid,x,’int32’); closestatus=fclose(fid);清除内存,关闭所有窗口fid=fopen(‘text.txt’,’r’);x=fread(fid,[5,5],’int32’); closestatus=fclose(fid); inv(x)16.随便生成一个矩阵,x1=-1:0.2:0.8;x2=-1:0.2:0.8;y1=x1.*sin(x2);y2=x2.*cos(x1);a=reshape([y1;y2],10,10);fid=fopen('table.txt','w'); fprintf (fid,‘%f’,a); fclose(fid) ;清除内存,关闭所有窗口a=fscanf('table.txt','%f') ; exp(a) ;fclose(fid) ;习题六1.c=ploy2str(A);B=[2,0,0,1,3,5];2.x=1:10;B=ployval(A,x);。

matlab课后习题答案

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 。

MATLAB)课后实验答案[1]

MATLAB)课后实验答案[1]

实验一 MATLAB 运算基础之阿布丰王创作1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保管全部变量.(1)0122sin851z e =+ (2)21ln(2z x =+,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (3)0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+=++=-- (4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5解:4. 完成下列把持:(1) 求[100,999]之间能被21整除的数的个数.(2) 建立一个字符串向量,删除其中的年夜写字母.解:(1) 结果:(2). 建立一个字符串向量 例如:ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处置1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单元矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A O S +⎡⎤=⎢⎥⎣⎦. 解: M 文件如下;5. 下面是一个线性方程组:(1) 求方程的解.(2) 将方程右边向量元素b 3改为0.53再求解,并比力b 3的变动和解的相对变动.(3) 计算系数矩阵A的条件数并分析结论.解: M文件如下:实验三选择结构法式设计1. 求分段函数的值.用if语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值.解:M文件如下:2. 输入一个百分制成果,要求输出成果品级A、B、C、D、E.其中90分~100分为A,80分~89分为B,79分~79分为C,60分~69分为D,60分以下为E.要求:(1) 分别用if语句和switch语句实现.(2) 输入百分制成果后要判断该成果的合理性,对分歧理的成果应输出犯错信息.解:M文件如下3. 硅谷公司员工的工资计算方法如下:(1) 工作时数超越120小时者,超越部份加发15%.(2) 工作时数低于60小时者,扣发700元.(3) 其余按每小时84元计发.试编程按输入的工号和该号员工的工时数,计算应发工资.解:M文件下实验四循环结构法式设计1. 根据2222211116123nπ=++++,求π的近似值.当n分别取100、1000、10000时,结果是几多?要求:分别用循环结构和向量运算(使用sum函数)来实现.解:M文件如下:运行结果如下:2. 根据11113521yn=++++-,求:(1) y<3时的最年夜n值.(2) 与(1)的n值对应的y值.解:M—文件如下:3. 考虑以下迭代公式:其中a、b为正的学数.(1) 编写法式求迭代的结果,迭代的终止条件为|x n+1-x n|≤10-5,迭代初值x0=1.0,迭代次数不超越500次.(2) 如果迭代过程收敛于r,那么r的准确值是,当(a,b)的值取(1,1)、(8,3)、(10,0.1)时,分别对迭代结果和准确值进行比力.解:M 文件如下:运算结果如下;5. 若两个连续自然数的乘积减1是素数,则称这两个边境自然数是亲密数对,该素数是亲密素数.例如,2×3-1=5,由于5是素数,所以2和3是亲密数,5是亲密素数.求[2,50]区间内:(1) 亲密数对的对数.(2) 与上述亲密数对对应的所有亲密素数之和.解:M 文件:实验五 函数文件4. 设2411()(2)0.1(3)0.01f x x x =+-+-+,编写一个MATLAB 函数文件fx.m,使得调用f(x)时,x 可用矩阵代入,得出的f(x)为同阶矩阵.解:运算结果:5. 已知(40)(30)(20)f y f f =+(1) 当f(n)=n+10ln(n2+5)时,求y的值.(2) 当f(n)=1×2+2×3+3×4+...+n×(n+1)时,求y的值.解:(1)(2).实验八数据处置与多项式计算2. 将100个学生5门功课的成果存入矩阵P中,进行如下处置:(1) 分别求每门课的最高分、最低分及相应学生序号.(2) 分别求每门课的平均分和标准方差.(3) 5门课总分的最高分、最低分及相应学生序号.(4) 将5门课总分按从年夜到小顺序存入zcj中,相应学生序号存入xsxh.提示:上机调试时,为防止输入学生成果的麻烦,可用取值范围在[45,95]之间的随机矩阵来暗示学生成果.解:M文件:运行结果:3. 某气象观测得某日6:00~18:00之间每隔2h的室内外温度(0C)如实验表1所示.实验表1 室内外温度观测结果(0C)时间h 6 8 10 12 14 16 18室内温度t1 18.0 20.0 22.0 25.0 30.0 28.0 24.0室外温度t2 15.0 19.0 24.0 28.0 34.0 32.0 30.0试用三次样条插值分别求出该日室内外6:30~18:30之间每隔2h各点的近似温度(0C).解:M文件:运行结果:4. 已知lgx在[1,101]区间10个整数采样点的函数值如实验表2所示.实验表2 lgx在10个采样点的函数值x 1 11 21 31 41 51 61 71 81 91 101lgx 0 1.0414 1.3222 1.4914 1.6128 1.7076 1.7853 1.8513 1.9085 1.9510 2.0043 试求lgx的5次拟合多项式p(x),并绘制出lgx和p(x)在[1,101]区间的函数曲线.解:M文件:5. 有3个多项式P1(x)=x4+2x3+4x2+5,P2(x)=x+2,P3(x)=x2+2x+3,试进行下列把持:(1) 求P(x)=P1(x)+P2(x)P3(x).(2) 求P(x)的根.(3) 当x取矩阵A的每一元素时,求P(x)的值.其中:(4) 当以矩阵A为自变量时,求P(x)的值.其中A的值与第(3)题相同.解:M文件:实验九 数值微积分与方程数值求解1. 求函数在指定点的数值导数.实验六 高层绘图把持3. 已知在-5≤x ≤5区间绘制函数曲线.解:M 文件:2. 用数值方法求定积分.(1)210I π=⎰的近似值. (2) 2220ln(1)1x I dt x π+=+⎰ 解:M 文件:运行结果:3. 分别用3种分歧的数值方法解线性方程组.解:M文件:运行结果:4. 求非齐次线性方程组的通解.解:M文件:.5. 求代数方程的数值解.(1) 3x+sin x-e x=0在x0=1.5附近的根.(2) 在给定的初值x0=1,y0=1,z0=1下,求方程组的数值解.解:M文件:(2). M文件:运行结果:6. 求函数在指定区间的极值. (1)3cos log ()x x x x x f x e ++=在(0,1)内的最小值. (2)33212112122(,)2410f x x x x x x x x =+-+在[0,0]附近的最小值点和最小值.解:M 文件:8. 求微分方程组的数值解,并绘制解的曲线. 解: 令y1=x,y2=y,y3=z; 这样方程酿成:'''0.51(0)0,(0)1,(0)1x yz y xz z xyx y z =⎧⎪=-⎪⎨=-⎪⎪===⎩,自变量是tM 文件:实验十 符号计算基础与符号微积分一、1. 已知x=6,y=5,利用符号表达式求提示:界说符号常数x=sym(‘6’),y=sym(‘5’).解:M文件:运行结果:2. 分解因式.(1) x4-y4(2) 5135解:M文件:运行结果:5. 用符号方法求下列极限或导数.解:M文件:运行结果:6. 用符号方法求下列积分.解:M文件:运行结果:。

MATLAB课后习题集附标准答案

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文件中. 謀荞抟箧飆鐸怼类蒋薔。

MATLAB)课后实验答案[1]

MATLAB)课后实验答案[1]

实验一 MATLAB 运算基础1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。

(1) 0122sin 851z e =+(2) 21ln(2z x =,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+=++=--L (4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5 解:4. 完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。

(2) 建立一个字符串向量,删除其中的大写字母。

解:(1) 结果:(2). 建立一个字符串向量例如:ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。

解: M 文件如下;5. 下面是一个线性方程组:ch =123d4e56g91231112340.951110.673450.52111456x x x ⎡⎤⎢⎥⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦(1) 求方程的解。

(2) 将方程右边向量元素b 3改为0.53再求解,并比较b 3的变化和解的相对变化。

(3) 计算系数矩阵A 的条件数并分析结论。

解: M 文件如下:实验三 选择结构程序设计1. 求分段函数的值。

2226035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其他用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y 值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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 =
56.0000 2.9944 第三章
二1(1) x=0:pi/10:2*pi; >> y=x-x.^3/6; >> plot(x,y)
(2)x=0:pi/10:2*pi; y=(exp(-x.^2/2))/2*pi;
plot(x,y)
(3)x=-8:0.01:8; y=sqrt((64-x.^2)/2);
plot(x,y)
(4)t=0:0.1:8*pi; >> x=t.*sin(t); >> y=t.*cos(t); >> plot(x,y)
例3.4
x=0:pi/100:2*pi; y1=exp(-0.5*x);
y2=exp(-0.5*x).*sin(2*x); plot(x,y1,x,y2)
>> title('x from 0 to 2{\pi} ');
>> xlabel('variable x');
>> ylabel('variable y');
>> text(1.5,0.5,'曲线y1=e^(-0.5x)'); >>
text(3,0.1,'

线
y2=cos(4{\pi}x)e^{-0.5x}'); >> legend('y1','y2')
variable x
v a r i a b l e y
2、(1)
y1=2*x-0.5;
t=linspace(0,pi,100);
x=sin(3*t).*cos(t);
y=sin(3*t).*sin(t);
>> k=find(abs(y-x)<1e-2);
>> t1=t(k) t1 =
0 0.7933 1.0472 2.0944 3.1416
>> z=sin(3.*(t1)).*cos(t1) z =
0.4841 0.0000 0.0000 -0.0000
>> plot(t,x,t,y,'k:',t1,z,'bp');
(2)subplot(1,2,1);
>> scatter(x1,y1,10);
>> title('y=2x-0.5');
>> subplot(1,2,2);
>> scatter(x,y,10)
3、subplot(1,2,1); x=0:0.01:pi; y=sin(1./x);
plot(x,y) subplot(1,2,2);
fplot('sin(1./x)',[1,100])
4、t=0:pi:2*pi;
y=1./(1+exp(-t));
subplot(2,2,1); %图形窗口的分割
bar(t,'group'); %绘制柱形图(分组)
subplot(2,2,2);
barh(t,'stack'); %绘制柱形图(堆积)
subplot(2,2,3);
loglog(t,y); %函数使用全对数坐标,x,y均采用常用对数刻度subplot(2,2,4);
semilogy(t,y);
%函数使用半对数坐标,y轴为常用对数刻度,x轴仍为线性刻度
10
10
10
10
10
10
10
5、(1)
theta=linspace(-pi,pi,100);
ro=5.*cos(theta)+4;
polar(theta,ro);
(2)
x=linspace(0,2*pi,100);
a=1
>> r=a.*(1+cos(x));
polar(x,r);
270
6、(1)
t=0:pi/10:2*pi;
>> x=exp((-t)/20).*cos(t); >> y=exp((-t)/20).*sin(t); >> z=t;
>> plot3(x,y,z);
(2)t=0:0.01:1;
x=t;
>> y=t.^2;
>> z=t.^3;
>> plot3(x,y,z);
7、x=-30:0.1:0;
>> y=0:0.1:30;
>> [x,y]=meshgrid(x,y);
>>
z=10.*sin(sqrt(x.^2+y.^2))./sqrt(1+x. ^2+y.^2);
>> meshc(x,y,z);
绘制曲面图和等高线
8、x=linspace(-3,3,100);
>> y=linspace(-3,3,100);
>> [x y]=meshgrid(x,y); %可以将向量转化为矩阵
>> fxy=-5./(1+x.^2+y.^2);
>> i=find(abs(x)<=0.8 &
abs(y)<=0.5);
>> fxy(i)=NaN; >>
surf(x,y,fxy) %绘制三维曲面图
9、
u=linspace(1,10,100);
v=linspace(-pi,pi,100);
[u v]=meshgrid(u,v);
x=3.*u.*sin(v);
y=2.*u.*cos(v);
z=4*u.^2;
surf(x,y,z);
shading interp;
第五章
二1、a=rand(1,30000);
mean(a) %求平均数 ans =
0.5010
>>
b=std(a)
%求标准差
b =
0.2882
>> c=max(a)
c = 0.9999 >> d=min(a)
d =。

相关文档
最新文档