第2章--MATLAB数据及其运算-习题答案教学内容
- 格式:doc
- 大小:28.50 KB
- 文档页数:4
实验二、MATLAB运算基础一、实验目的掌握MATLAB各种表达式的书写规则及常用函数的使用。
掌握MATLAB中字符串、元胞数组和结构的常用函数的使用。
二、实验内容及步骤1、设有矩阵A和B,A=[1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 1718 19 20;21 22 23 24 25],B=[3 0 16;17 -6 9;0 23 -4;9 7 0;4 1311]1)求它们的乘积C >>C=A*B2)将矩阵C的右下角3x2子矩阵赋给D >>I=[3 4 5];J=[2 3];D=C(I,J)也可以用>>D=C([3 4 5],[2 3])D =520 397705 557890 7172、完成下列操作1)求[100,999]之间能被61整除的数及其个数(提示:先利用冒号表达式,再利用find和length函数。
)>> a=100:999;find(rem(a,61)==0)ans =23 84 145 206 267 328 389 450 511572 633 694 755 816 877>> b=a(ans)b =122 183 244 305 366 427 488 549 610 671 732 793 854 915 976>> length(b)ans =152)建立一个字符串向量,删除其中的大写字母(提示:利用find函数和空矩阵。
)a=’I am maying’;a( find(a>’A’&a<’Z’))=[]3、已知A=[23 10 -78 0;41 -45 65 5;32 5 0 32;6 -54 92 14],取出其前3行构成矩阵B,其前两列构成矩阵C,其左下角3x2子矩阵构成矩阵D,B与C的乘积构成矩阵E,分别求E<D、E&D、E|D、~E|~D。
第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命令显示详细信息.第3章 MATLAB 数值运算3.1在MA TLAB 中如何建立矩阵⎥⎦⎤⎢⎣⎡194375,并将其赋予变量a ? 答:在Command Window 窗口输入操作:>> a=[5 7 3;4 9 1]3.2有几种建立矩阵的方法?各有什么优点? 答:(1)直接输入法,如a=[1 2 3 4],优点是输入方法方便简捷;(2)通过M 文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改; (3)由函数建立,如y=sin(x),可以由MATLAB 的内部函数建立一些特殊矩阵; (4)通过数据文件建立,该方法可以调用由其他软件产生数据.3.3在进行算术运算时,数组运算和矩阵运算各有什么要求?答:进行数组运算的两个数组必须有相同的尺寸.进行矩阵运算的两个矩阵必须满足矩阵运算规则,如矩阵a 与b 相乘(a*b )时必须满足a 的列数等于b 的行数.渗釤呛俨匀谔鱉调硯錦。
第二章 MATLAB 语言及应用实验项目实验一 MATLAB 数值计算三、实验内容与步骤1.创建矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a(1(2)用(3)用(42.矩阵的运算(1)利用矩阵除法解线性方程组。
⎪⎪⎩⎪⎪⎨⎧=+++=-+-=+++=+-12224732258232432143214321421x x x x x x x x x x x x x x x 将方程表示为AX=B ,计算X=A\B 。
(2)利用矩阵的基本运算求解矩阵方程。
已知矩阵A 和B 满足关系式A -1BA=6A+BA ,计算矩阵B 。
其中⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=7/10004/10003/1A ,Ps: format rata=[1/3 0 0;0 1/4 0;0 0 1/7];b=inv(a)*inv(inv(a)-eye(3))*6*a(3)计算矩阵的特征值和特征向量。
已知矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=1104152021X ,计算其特征值和特征向量。
(4)Page:322利用数学函数进行矩阵运算。
已知传递函数G(s)=1/(2s+1),计算幅频特性Lw=-20lg(1)2(2w )和相频特性Fw=-arctan(2w),w 的范围为[0.01,10],按对数均匀分布。
3.多项式的运算(1)多项式的运算。
已知表达式G(x)=(x-4)(x+5)(x 2-6x+9),展开多项式形式,并计算当x 在[0,20]内变化时G(x)的值,计算出G(x)=0的根。
Page 324(2)多项式的拟合与插值。
将多项式G(x)=x 4-5x 3-17x 2+129x-180,当x 在[0,20]多项式的值上下加上随机数的偏差构成y1,对y1进行拟合。
对G(x)和y1分别进行插值,计算在5.5处的值。
Page 325 四、思考练习题1.使用logspace 函数创建0~4π的行向量,有20个元素,查看其元素分布情况。
Ps: logspace(log10(0),log10(4*pi),20) (2) sort(c,2) %顺序排列 3.1多项式1)f(x)=2x 2+3x+5x+8用向量表示该多项式,并计算f(10)值. 2)根据多项式的根[-0.5 -3+4i -3-4i]创建多项式。
第2章0000符号运算0000习题2及解答00001 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号”符号对象?00003/7+0.1; sym(3/7+0.1); sym('3/7+0.1'); vpa(sym(3/7+0.1))0000〖目的〗0000不能从显示形式判断数据类型,而必须依靠class指令。
0000〖解答〗0000c1=3/7+0.10000c2=sym(3/7+0.1)0000c3=sym('3/7+0.1')0000c4=vpa(sym(3/7+0.1))0000Cs1=class(c1)0000Cs2=class(c2)0000Cs3=class(c3)0000Cs4=class(c4) 0000c1 =00000.52860000c2 =000037/700000c3 =00000.528571428571428571428571428571430000c4 =00000.528571428571428571428571428571430000Cs1 =0000double0000Cs2 =0000sym0000Cs3 =0000sym0000Cs4 =0000sym00002 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认为是自由符号变量.0000sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)')0000〖目的〗0000● 理解自由符号变量的确认规则。
0000〖解答〗0000symvar(sym('sin(w*t)'),1) 0 0 0 0ans = 0 0 0 0 w 0 0 0 0symvar(sym('a*exp(-X)'),1) 0 0 0 0ans = 0 0 0 0 a 0 0 0 0symvar(sym('z*exp(j*th)'),1) 0 0 0 0ans = 0 0 0 0 z 0 0 0 05求符号矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=333231232221131211a a a a a a a a a A 的行列式值和逆,所得结果应采用“子表达式置换”简洁化。
matlab第二版课后习题答案
《MATLAB第二版课后习题答案》
MATLAB是一种强大的数学软件,被广泛应用于工程、科学和金融等领域。
《MATLAB第二版》是一本经典的教材,为了帮助学生更好地掌握MATLAB的使用,书中提供了大量的课后习题。
下面我们将为大家总结一些MATLAB第二版课后习题的答案,希望能对大家的学习有所帮助。
1. 第一章课后习题答案
第一章主要介绍了MATLAB的基本操作,包括变量的定义、矩阵的运算、函数的使用等。
在课后习题中,有一道题目是要求计算一个矩阵的逆矩阵。
答案是使用MATLAB中的inv函数,将原矩阵作为参数传入即可得到逆矩阵。
2. 第二章课后习题答案
第二章介绍了MATLAB中的绘图功能,包括二维和三维图形的绘制。
有一道课后习题是要求绘制一个正弦曲线和余弦曲线,并在同一张图上显示。
答案是使用MATLAB中的plot函数,分别绘制正弦曲线和余弦曲线,并使用legend函数添加图例。
3. 第三章课后习题答案
第三章介绍了MATLAB中的控制流程,包括if语句、for循环和while循环等。
有一道课后习题是要求编写一个程序,计算1到100之间所有偶数的和。
答案是使用for循环遍历1到100之间的所有数,判断是否为偶数并累加。
通过以上几个例子,我们可以看到MATLAB第二版课后习题的答案涵盖了各种基本和高级的操作,对于学习MATLAB是非常有帮助的。
希望大家在学习MATLAB的过程中能够多加练习,掌握更多的技巧和方法。
Matlab教程第二章符号计算课堂练习1 创建符号变量有几种方法?MATLAB提供了两种创建符号变量和表达式的函数:sym和syms。
sym用于创建一个符号变量或表达式,用法如x=sym(‘x’) 及f=sym(‘x+y+z’),syms用于创建多个符号变量,用法如syms x y z。
f=sym(‘x+y+z’)相当于syms x y zf= x+y+z2 下面三种表示方法有什么不同的含义?(1)f=3*x^2+5*x+2(2)f='3*x^2+5*x+2'(3)x=sym('x')f=3*x^2+5*x+2(1)f=3*x^2+5*x+2表示在给定x时,将3*x^2+5*x+2的数值运算结果赋值给变量f,如果没有给定x则指示错误信息。
(2)f='3*x^2+5*x+2'表示将字符串'3*x^2+5*x+2'赋值给字符变量f,没有任何计算含义,因此也不对字符串中的内容做任何分析。
(3)x=sym('x')f=3*x^2+5*x+2表示x是一个符号变量,因此算式f=3*x^2+5*x+2就具有了符号函数的意义,f也自然成为符号变量了。
3 用符号函数法求解方程a t2+b*t+c=0。
>> r=solve('a*t^2+b*t+c=0','t')[ 1/2/a*(-b+(b^2-4*a*c)^(1/2))] [ 1/2/a*(-b-(b^2-4*a*c)^(1/2))]4 用符号计算验证三角等式:sin(ϕ1)cos(ϕ2)-cos(ϕ1)sin(ϕ2) =sin(ϕ1-ϕ2) >> syms phi1 phi2;>> y=simple(sin(phi1)*cos(phi2)-cos(phi1)*sin(phi2)) y =sin(phi1-phi2)5 求矩阵⎥⎦⎤⎢⎣⎡=22211211a a a a A 的行列式值、逆和特征根。
第2章--M A T L A B数据及其运算-习题答案
第2章 MATLAB数据及其运算
习题2
一、选择题
1.下列可作为MATLAB合法变量名的是()。
D A.合计 B.123 C.@h D.xyz_2a 2.下列数值数据表示中错误的是()。
C
A.+10 B.1.2e-5 C.2e D.2i
3.使用语句t=0:7生成的是()个元素的向量。
A A.8 B.7 C.6 D.5
4.执行语句A=[1,2,3;4,5,6]后,A(3)的值是()。
B A.1 B.2 C.3 D.4
5.已知a为3×3矩阵,则a(:,end)是指()。
D A.所有元素 B.第一行元素
C.第三行元素 D.第三列元素
6.已知a为3×3矩阵,则运行a (1)=[]后()。
A A.a变成行向量 B.a变为2行2列
C.a变为3行2列 D.a变为2行3列
7.在命令行窗口输入下列命令后,x的值是()。
B >> clear
>> x=i*j
A.不确定 B.-1 C.1 D.i*j 8.fix(354/100)+mod(354,10)*10的值是()。
D A.34 B.354 C.453 D.43
9.下列语句中错误的是()。
B
A.x==y==3 B.x=y=3
C.x=y==3 D.y=3,x=y
10.find(1:2:20>15)的结果是()。
C
A.19 20 B.17 19
C.9 10 D.8 9
11.输入字符串时,要用()将字符括起来。
C A.[ ] B.{ } C.' ' D." " 12.已知s='显示"hello"',则s的元素个数是()。
A A.9 B.11 C.7 D.18
13.eval('sqrt(4)+2')的值是()。
B
A.sqrt(4)+2 B.4 C.2 D.2, 2
14.有3×4的结构矩阵student,每个结构有name(姓名)、scores(分数)两个成员,其中scores是以1×5矩阵表示的5门课的成绩,那么要删除第4个学生的第2门课成绩,应采用的正确命令是()。
D
A.rmfield(student(1,2).scores(2)) B.rmfield(student(4).scores)
C.student(4).scores(2)=0 D.student(1,2).scores(2)=[]
15.有一个2行2列的单元矩阵c,则c(2)是指()。
B
A.第一行第二列的元素内容 B.第二行第一列的元素内容
C.第一行第二列的元素 D.第二行第一列的元素
二、填空题
1.从键盘直接输入矩阵元素来建立矩阵时,将矩阵的元素用括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用分隔,不同行的元素之间用分隔。
中括号,逗号或空格,分号
2.设A=[1,2;3,4],B=[5,6;7,8],则A*B= , A.*B= 。
A*B=[19,22;43,50],A.*B=[5,12;21,32]
3.有3×3矩阵,求其第 5个元素的下标的命令是,求其第三行、第三列元素的序号的命令是。
[i,j]=ind2sub([3 3],5),ind=sub2ind([3 3],3,3)
4.下列命令执行后的输出结果是。
20
>> ans=5;
>> 10;
>> ans+10
5.下列命令执行后,new_claim的值是。
This is a great example.
claim= 'This is a good example.';
new_claim=strrep(claim,'good','great')
三、应用题
1.命令X=[]与clear X有何不同?请上机验证结论。
Clear X是将X从工作空间中删除,而X=[]是给X赋空矩阵。
空矩阵存在于工作空间中,只是没有任何元素。
2.在一个MATLAB命令中,6 + 7i和6 + 7*i有何区别?i和I有何区别?3.设A和B是两个同大小的矩阵,试分析A*B和A.*B、A./B和B.\A、A/B 和B\A的区别?如果A和B是两个标量数据,结论又如何?
4.写出完成下列操作的命令。
(1)将矩阵A第2~5行中第1,3,5列元素赋给矩阵B。
(2)删除矩阵A的第5号元素。
(3)求矩阵A的大小和维数。
(4)将向量t 的0元素用机器零来代替。
(5)将含有12个元素的向量x 转换成3 × 4矩阵。
5.已知:
⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡---=14.35454
.9632053256545410778.01023Α 完成下列操作:
(1)取出 A 的前3行构成矩阵B ,前两列构成矩阵C ,右下角3×2子矩阵构成矩阵D ,B 与C 的乘积构成矩阵E 。
(2)分别求E<D 、E&D 、E|D 、~E|~D 和find(A>=10&A<25)。
6.建立单元矩阵B ,并回答有关问题。
y.a=1;
y.b=[1:3;4:6];
B{1,1}=1;
B{1,2}='Brenden';
B{2,1}=y;
B{2,2}={12,34,2;54,21,3;4,23,67};
(1)size(B)和ndims(B)的值分别是多少?
(2)B(2)和B(4)的值分别是多少?
(3)B(3)=[]和B{3}=[]执行后,B 的值分别是多少?。