MATLAB教程2012a第3章习题解答 张志涌
Matlab编程与应用习题和一些参考答案

Matlab编程与应用习题和一些参考答案Matlab 上机实验一、二3.求下列联立方程的解⎪⎪⎩⎪⎪⎨⎧=+-+-=-+=++-=--+41025695842475412743w z y x w z x w z y x w z y x >> a=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10];>> b=[4;4;9;4];>> c=a\b4.设⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡------=81272956313841A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-----=793183262345B ,求C1=A*B’;C2=A’*B;C3=A.*B,并求上述所有方阵的逆阵。
>> 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];>> C1=A*B'>> C2=A'*B>> C3=A.*B>> inv(C1)>> inv(C2)>> inv(C3)5.设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y ,把x=0~2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线。
>> x=linspace(0,2*pi,101);>> y=cos(x)*(0.5+(1+x.^2)\3*sin(x));>> plot(x,y,'r')6.产生8×6阶的正态分布随机数矩阵R1, 求其各列的平均值和均方差。
并求该矩阵全体数的平均值和均方差。
(mean var )a=randn(8,6)mean(a)var(a)k=mean(a)k1=mean(k)i=ones(8,6)i1=i*k1i2=a-i1i3=i2.*i2g=mean(i3)g2=mean(g)10.利用帮助查找limit 函数的用法,并自己编写,验证几个函数极限的例子。
matlab第三章课后部分答案

matlab第三章课后部分答案习题三3-2 从键盘输入一个三位整数,将它反向输出。
如输入639,输出为936程序如下:m=input('请输入一个三位整数:');m1=fix(m/100);%求m的百位整数m2=rem(fix(m/10),10);%求m的十位数字m3=rem(m,10);%求m的个位数字m=m3*100+m2*10+m1%反向输出m3-3 输入一个百分制成绩,要求输出成绩等级A,B,C,D,E。
其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
要求:(1)分别用if语句和switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
程序如下:(1)if语句c=input('请输入成绩:');if c>=90&c<=100disp('A 成绩合理');elseif c>=80&c<=89disp('B 成绩合理');elseif c>=70&c<=79disp('C 成绩合理'); elseif c>=60&c<=69disp('D 成绩合理'); elseif c<60disp('E 成绩合理');elsedisp('成绩错误');end(2)switch语句c=input('请输入成绩:'); switch fix(c)case num2cell(90:100)disp('A 成绩合理'); case num2cell(80:89)disp('B 成绩合理'); case num2cell(70:79)disp('C 成绩合理'); case num2cell(60:69)disp('D 成绩合理'); case num2cell(0:59)disp('E 成绩合理');x=fix(rand(1,20)*89)+10;x1=fix(sum(x)/20);disp(['平均数是:',num2str(x1)])m=(rem(x,2)==0&x<x1);n=find(m);disp(['小于平均数的数是:',num2str(x(n))]); 3-6 输入20个数,求其中最大数和最小数。
MATLAB2012复习提纲 - (打印版)

�
4、函数搜索、词条搜索指令 p31
①函数搜索指令
在“知道具体函数指令名称,但不知道该函数如何使用 ”的场合,运用函数搜索指令 能很好地获得帮助信息。函数搜索指令的调用方法如下:
help help TopicName help FunName helpwin 列出所有函数分组名(Topic Name) 列出指定名称函数组中的所有函数 给出指定名称函数的使用方法 列出所有函数分组名(Topic Name)
2、搜索路径 p22
①利用设置路径对话框修改搜索路径 采用以下任何一种方法都可以引出设置路径对话框。 � 在指令框里,运行指令 pathtool.
�Leabharlann 在 matlabAB 桌面、指令窗等的菜单条中,选择{Frle:Set
Path }下拉菜单项,如图
图 1.6-2 路径设置对话框 〖说明〗 � 两种修改状态: 1、当前有效修改——假如在路径设置过程中,仅使用了该对话框的左侧按钮而不单击【save】按键; 2、永久有效修改——假如在设置路径后,单击了对话框下方【save】按键。 � 所谓永久有效修改是指:所进行的修改不因 matlab 的关闭而消失。 ②利用指令 path 设置路径 利用 path 指令设置路径的方法对任何版本的 matlab 都适用。假设待纳入搜索路径的目录为 C:\my_dir,那 么以下任何一条指令均能实现:
A
取对角元构成向量,或据向量构成对角阵 特征值分解,使 AV=VD 矩阵指数
e
−1
A
矩阵逆 A 阵 A 的 jordan 分解,使 AV=VJ 零空间的基 矩阵的特征多项式 矩阵秩 A 的行阶梯形式 奇异值分解
A 的下三角形式 A 的上三角形式
2.8-1,3.2-1,3.2-2,3.2-3,3.5-1,3.5-2,5.2-1,5.2-5,5.2-6,6.1-4 实验三
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教程2012a第3章习题解答张志涌(可编辑修改word版)

F2a=b.^A F2 =
0.99095 -0.66337 F2a =
0.5 0.125
%标量底矩阵指数的求幂 %标量底数组指数的求幂
-0.44225 0.32759
0.25 0.0625
(3)
F3a=A.^C
F3a =
1
4
3
2
%数组底数组指数的求幂
F3=A^C
%矩阵底矩阵指数的求幂运算不存在
〖解答〗
A=magic(3), B=[1,2,1;3,4,3;5,6,7]%创建阵列
A=
8
1
6
3
5
7
4
9
2
B=
1
2
1
3
4
3
5
6
7
(1)
C1amb=A*B
C1bma=B*A C1amb =
41 56 53 53 68 67 41 56 45 C1bma = 18 20 22 48 50 52 86 98 86
后根据计算结果回答以下问题:
(提示:根据对计算结果的目测回答问题)
〖目的〗 数组运算和矩阵运算的不同。 如何判断两个双精度数组是否相等。 norm 指令的应用。
〖解答〗
A=[1, 2; 3, 4],b=0.5,C=[4, 2; 1, 0.5]
A=
1
2
3
4
b=
0.5
C=
4
2
1
0.5
%创建数据
(1)
第 3 章 数值阵列及其运算
习题 3 及解答
1 在 MATLAB 中,先运行指令 A=magic(3), B=[1,2,1;3,4,3;5,6,7]
MATLAB教程2012a习题解答1-7章完整版-张志涌-北航

●MATLAB R2012a●课后习题答案全解●第一章基础准备及入门习题1及解答⏹ 1.数字1.5e2,1.5e3 中的哪个与1500相同吗?〖解答〗1.5e3⏹ 2.请指出如下5个变量名中,哪些是合法的?abcd-2 xyz_3 3chan a变量ABCDefgh〖解答〗2、5是合法的。
⏹ 3.在MATLAB环境中,比1大的最小数是多少?〖解答〗1+eps⏹ 4.设a = -8 , 运行以下三条指令,问运行结果相同吗?为什么?w1=a^(2/3)w2=(a^2)^(1/3)w3=(a^(1/3))^2〖解答〗(1)不同。
具体如下w1=a^(2/3) %仅求出主根w2=(a^2)^(1/3) %求出(-8)^2的主根 w3=(a^(1/3))^2%求出(-8)主根后再平方w1 = -2.0000 + 3.4641iw2 = 4.0000 w3 =-2.0000 + 3.4641i(2)复数的多方根的,下面是求取全部方根的两种方法: (A )根据复数方根定义a=-8;n=2;m=3;ma=abs(a);aa=angle(a); for k=1:m%m 决定循环次数 sa(k)=(aa+2*pi*(k-1))*n/m;%计算各根的相角 endresult=(ma^(2/3)).*exp(j*sa) %计算各根result =-2.0000 + 3.4641i 4.0000 - 0.0000i -2.0000 - 3.4641i(B )利用多项式023=-a r 求根p=[1,0,0,-a^2]; r=roots(p) r =-2.0000 + 3.4641i -2.0000 - 3.4641i 4.0000⏹ 5.指令clear, clf, clc 各有什么用处?〖解答〗 clear 清除工作空间中所有的变量。
clf 清除当前图形。
clc 清除命令窗口中所有显示。
⏹ 6.以下两种说法对吗?(1)“MATLAB 进行数值的表达精度与其指令窗中的数据显示精度相同。
matlab第二版课后习题答案

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概论1.1与其他计算机语言相比较,MA TLAB语言突出的特点是什么?MA TLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。
1.2 MA TLAB系统由那些部分组成?MA TLAB系统主要由开发环境、MA TLAB数学函数库、MA TLAB语言、图形功能和应用程序接口五个部分组成。
1.3 安装MA TLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装MA TLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MA TLAB选项)必须安装。
第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。
1.4 MA TLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?在MA TLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。
1.5 如何启动M文件编辑/调试器?在操作桌面上选择‚建立新文件‛或‚打开文件‛操作时,M文件编辑/调试器将被启动。
在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。
1.6 存储在工作空间中的数组能编辑吗?如何操作?存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。
1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章 数值阵列及其运算习题3及解答1 在MATLAB 中,先运行指令A=magic(3), B=[1,2,1;3,4,3;5,6,7]生成阵列33⨯A ,33⨯B ,然后根据运行结果回答以下问题:〖目的〗● 体验矩阵乘法次序不可交换;● 体验矩阵左除、右除的不同;● 体验数组乘法次序可交换;● 体验数组左除、右除的相同性;● 体验矩阵乘法与数组乘法的根本性差别● 体验矩阵求逆的两种方法;● 体验数组“逆”概念〖解答〗A=magic(3), B=[1,2,1;3,4,3;5,6,7]%创建阵列A =8 1 63 5 74 9 2B =1 2 13 4 35 6 7(1)C1amb=A*B%相乘矩阵的次序不可交换C1bma=B*AC1amb =41 56 5353 68 6741 56 45C1bma =18 20 2248 50 5286 98 86(2)C2adb=A\B %矩阵左除和右除根本不同C2bda=B/AC2adb =0.0333 0.1000 0.16110.5333 0.6000 0.74440.0333 0.1000 -0.1722C2bda =0.0056 0.0889 0.17220.1389 0.2222 0.30560.2333 0.7333 0.2333(3)C3amb=A.*B %数组乘法不分左、右乘,因为是“元素对元素的运算”C3bma=B.*AC3amb =8 2 69 20 2120 54 14C3bma =8 2 69 20 2120 54 14(4)C4adb=A.\B %数组除法不分左、右除,因为是“元素对元素的运算”C4bda=B./AC4adb =0.1250 2.0000 0.16671.0000 0.8000 0.42861.2500 0.6667 3.5000C4bda =0.1250 2.0000 0.16671.0000 0.8000 0.42861.2500 0.6667 3.5000(5)C5ada=A\A %相当于inv(A)*A,所以得到“单位阵”C5adda=A.\A %相当于“数组逆”乘数组,得到“单位数组”C5ada =1 0 00 1 00 0 1C5adda =1 1 11 1 11 1 1(6)C6ade=A\eye(3) %矩阵求逆的代数方程法C6inv=inv(A) %直接利用求逆指令。
两者结果相同C6ade =0.1472 -0.1444 0.0639-0.0611 0.0222 0.1056-0.0194 0.1889 -0.1028C6inv =0.1472 -0.1444 0.0639-0.0611 0.0222 0.1056-0.0194 0.1889 -0.1028(7)AC7add1=A.\1 %求“数组逆”C7ade=A\eye(3) %求“矩阵逆”A =8 1 63 5 74 9 2C7add1 =0.1250 1.0000 0.16670.3333 0.2000 0.14290.2500 0.1111 0.5000C7ade =0.1472 -0.1444 0.0639-0.0611 0.0222 0.1056-0.0194 0.1889 -0.10282 在MATLAB中,先运行A=[1, 2; 3, 4],b=0.5,C=[4, 2; 1, 0.5], 然后根据计算结果回答以下问题:(提示:根据对计算结果的目测回答问题)〖目的〗●数组运算和矩阵运算的不同。
●如何判断两个双精度数组是否相等。
●norm指令的应用。
〖解答〗A=[1, 2; 3, 4],b=0.5,C=[4, 2; 1, 0.5] %创建数据A =1 23 4b =0.5C =4 21 0.5(1)F1=A^b %平方根矩阵,可用F1*F1验算F1a=A.^b %平方根数组,可用F1a.*F1a验算F1 =0.55369 + 0.46439i 0.80696 - 0.21243i1.2104 - 0.31864i 1.7641 + 0.14575iF1a =1 1.41421.7321 2(2)F2=b^A %标量底矩阵指数的求幂F2a=b.^A %标量底数组指数的求幂F2 =0.99095 -0.44225-0.66337 0.32759F2a =0.5 0.250.125 0.0625(3)F3a=A.^C %数组底数组指数的求幂F3a =1 43 2F3=A^C %矩阵底矩阵指数的求幂运算不存在??? Error using ^Inputs must be a scalar and a square matrix.To compute elementwise POWER, use POWER (.^) instead.3 在MATLAB中,先运行rng default, A=randn(3,3)+1j*randn(3,3)生成)33(⨯的复数矩阵A,然后根据计算结果回答以下问题:(提示:判断本题计算结果是否相同,用目测法即可)〖目的〗●体验共轭转置、非共轭转置、共轭运算的产别;●建立起MATLAB数据的基本处理单元是“复数阵列(包括矩阵、数组)”的概念。
〖解答〗rng default %为保证计算结果可重复A=randn(3,3)+1j*randn(3,3) %创建(3*3)复数数组A =0.53767 + 2.7694i 0.86217 + 0.7254i -0.43359 - 0.20497i1.8339 - 1.3499i 0.31877 - 0.063055i 0.34262 - 0.12414i -2.2588 +3.0349i -1.3077 + 0.71474i 3.5784 + 1.4897i(1)C11=A' %复数矩阵的共轭转置C12=A.' %复数数组的非共轭转置C13=conj(A) %复数数组的共轭运算C14=conj(A.') %复数矩阵共轭转置的另一种指令形式。
结果与C11相同C11 =0.53767 - 2.7694i 1.8339 + 1.3499i -2.2588 - 3.0349i 0.86217 - 0.7254i 0.31877 + 0.063055i -1.3077 - 0.71474i -0.43359 + 0.20497i 0.34262 + 0.12414i 3.5784 - 1.4897iC12 =0.53767 + 2.7694i 1.8339 - 1.3499i -2.2588 + 3.0349i 0.86217 + 0.7254i 0.31877 - 0.063055i -1.3077 + 0.71474i -0.43359 - 0.20497i 0.34262 - 0.12414i 3.5784 + 1.4897iC13 =0.53767 - 2.7694i 0.86217 - 0.7254i -0.43359 + 0.20497i1.8339 + 1.3499i 0.31877 + 0.063055i 0.34262 + 0.12414i -2.2588 -3.0349i -1.3077 - 0.71474i 3.5784 - 1.4897iC14 =0.53767 - 2.7694i 1.8339 + 1.3499i -2.2588 - 3.0349i 0.86217 - 0.7254i 0.31877 + 0.063055i -1.3077 - 0.71474i -0.43359 + 0.20497i 0.34262 + 0.12414i 3.5784 - 1.4897i(2)C21=A*A' %生成埃米特矩阵(复数共轭对称阵),其对角元一定为正实数C22=A*A.' %对称的复数数组,非共轭,对角元不保证是正实数C23=A.*conj(A) %正实数数组,每个元素是原因子数组对应元素的模平方C21 =9.4584 -2.6464 + 5.9662i 4.7246 - 9.5399i -2.6464 - 5.9662i 5.4237 -7.6601 - 3.6165i 4.7246 + 9.5399i -7.6601 + 3.6165i 31.558 C22 =-7.0176 + 4.4067i 4.871 + 4.5135i -12.512 - 6.3357i 4.871 + 4.5135i 1.7406 - 5.0763i 0.99354 + 8.9913i -12.512 - 6.3357i 0.99354 + 8.9913i 7.6765 - 4.9187iC23 =7.9589 1.2696 0.230015.1853 0.10559 0.132814.313 2.2209 15.0244 在时间区间 [0,10]中,绘制t-=曲线。
要求分别采取“标15.0-cosey t2量循环运算法”和“数组运算法”编写两段程序绘图。
(注意:体验数组运算的简捷。
)〖目的〗●加强理解数组运算的机理和应用。
●初步使用subplot, plot, xlabel, ylabel等指令绘图。
〖解答〗%标量循环运算法t=linspace(0,10,200);N=length(t);y1=zeros(size(t));for k=1:Ny1(k)=1-exp(-0.5*t(k))*cos(2*t(k));endsubplot(1,2,1),plot(t,y1),xlabel('t'),ylabel('y1'),grid on%数组运算法y2=1-exp(-0.5*t).*cos(2*t);5 要求在闭区间]2,0[ 上产生具有10个等距采样点的一维数组。
试用两种不同的指令实现。
〖目的〗●数值计算中产生自变量采样点的两个常用指令的异同。
〖解答〗%方法一t1=linspace(0,2*pi,10)%方法二t2=0:2*pi/9:2*pi %要注意采样间距的选择,如这里的2*pi/9.t1 =Columns 1 through 70 0.6981 1.3963 2.0944 2.7925 3.4907 4.1888 Columns 8 through 104.88695.58516.2832t2 =Columns 1 through 70 0.6981 1.3963 2.0944 2.7925 3.4907 4.1888 Columns 8 through 104.88695.58516.28326 由指令rng('default'),A=rand(3,5)生成二维数组A,试求该数组中所有大于0.5的元素的位置,分别求出它们的“全下标”和“单序号”。