Matlab上机练习二答案资料
matlab习题二带答案
matlab习题二带答案Matlab习题二带答案Matlab是一种强大的数值计算和科学编程软件,广泛应用于各个领域的科学研究和工程实践中。
掌握Matlab的使用对于科学家和工程师来说至关重要。
为了帮助大家更好地掌握Matlab,下面将介绍一些常见的Matlab习题,并提供相应的答案。
1. 习题一:计算平均值编写一个Matlab函数,输入一个向量,输出该向量的平均值。
答案:```matlabfunction avg = computeAverage(vector)avg = sum(vector) / length(vector);end```2. 习题二:矩阵操作编写一个Matlab函数,输入两个矩阵A和B,输出它们的乘积C。
答案:```matlabfunction C = matrixMultiplication(A, B)[m, n] = size(A);[~, p] = size(B);C = zeros(m, p);for i = 1:mfor j = 1:pfor k = 1:nC(i, j) = C(i, j) + A(i, k) * B(k, j);endendendend```3. 习题三:图像处理编写一个Matlab函数,输入一张彩色图像,输出该图像的灰度图像。
答案:```matlabfunction grayImage = convertToGray(image)grayImage = rgb2gray(image);end```4. 习题四:数据拟合给定一组数据点(x, y),编写一个Matlab函数,拟合这些数据点为一条直线,并返回拟合直线的斜率和截距。
答案:```matlabfunction [slope, intercept] = fitLine(x, y)n = length(x);sx = sum(x);sy = sum(y);sxy = sum(x .* y);sxx = sum(x .* x);slope = (n * sxy - sx * sy) / (n * sxx - sx^2);intercept = (sy - slope * sx) / n;end```5. 习题五:数值积分编写一个Matlab函数,输入一个函数f(x)和积分区间[a, b],输出该函数在该区间上的数值积分结果。
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上机习详解_试题答案
P 第一次实验答案1. 设要求以0.01秒为间隔,求出y 的151个点,并求出其导数的值和曲线。
clc clearx=0:0.01:1.5;y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3)y1=diff(y) subplot(2,1,1) plot(x,y)subplot(2,1,2) plot(x(1:150),y1)2绘制极坐标系下曲线(a,b,n 自定数据)clc clear a=10; b=pi/2; n=5;theta=0:pi/100:2*pi; rho=a*cos(b+n*theta); polar(theta,rho)3. 列出求下列空间曲面交线的程序clc clearx=[-5:0.5:5];[X,Y]=meshgrid(x); z1=X.^2-2*Y.^2;z2=X.*2-Y.*3; xlabel('x') ylabel('y') zlabel('z') surf(X,Y,z1) hold onsurf(X,Y,z2)k=find(abs(z1-z2)<0.5); x1=X(k) y1=Y(k)z3=x1.^2-2*y1.^2 hold onplot3(x1,y1,z3,'*')4、设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y 把x=0~2π间分为101点,画出以x 为横坐标,y为纵坐标的曲线,要求有图形标注。
clc clearx=-2*pi:0.1: 2*pi;y=cos(x).*(0.5+sin(x)*3./(1+x.^2)); plot(x,y,'b*-'); title('绘图'); xlabel('x 坐标'); ylabel('y 坐标'); legend('原函数')gtext('y=cos(x)(0.5+3*sin(x)/(1+x^2))')5、求下列联立方程的解 81025695832475412743-=+-+-=-+-=++-=--+w z y x w z x w z y x w z y xclc cleara=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10];b=[4,-3,9,-8]; c=b/a; x=c(1,1) y=c(1,2) z=c(1,3) w=c(1,4)6. 假设一曲线数据点为x = 0:2:4*pi;y = sin(x).*exp(-x/5);试将x 的间距调成 0.1,采用不同插值方法进行插值,并通过子图的形式将不同插值结果和原始数据点绘制在同一图形窗口。
matlab 上机练习1-2 (2)
第一次上机:基础准备及入门2.1 指令窗运行入门2.1.1 最简单的计算器使用法【例2.5.1-1】求23)]47(212[÷-⨯+的算术运算结果。
(1)用键盘在MATLAB 指令窗中输入以下内容 >> (12+2*(7-4))/3^2(2)在上述表达式输入完成后,按【Enter 】键,该就指令被执行。
(3)在指令执行后,MATLAB 指令窗中将显示以下结果。
ans = 2【例2.5.1-2】简单矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321A 的输入步骤。
(1)在键盘上输入下列内容A = [1,2,3; 4,5,6; 7,8,9](2)按【Enter 】键,指令被执行。
(3)在指令执行后,MATLAB 指令窗中将显示以下结果:A =1 2 3 4 5 6 7 8 9【例2.5.1-3】矩阵的分行输入A=[1,2,3 4,5,6 7,8,9](以下是显示结果)A =1 2 3 4 5 6 7 8 9【例2.5.1-4】指令的续行输入(以下格式在除Notebook 外的MATLAB 环境中可运行)S = 1 – 1/2 + 1/3 –1/4 + 1/5 – 1/6 ... + 1/7 – 1/8 S =0.63452.1.2数值、变量和表达式2.1.2.1复数和复数矩阵【例2.5.2.5-1】复数ieziziz63212,21,43π=+=+=表达,及计算321zzzz=。
(1)经典教科书的直角坐标表示法z1= 3 + 4iz1 =3.0000 +4.0000i(2)采用运算符构成的直角坐标表示法和极坐标表示法z2 = 1 + 2 * i %运算符构成的直角坐标表示法z3=2*exp(i*pi/6) %运算符构成的极坐标表示法z=z1*z2/z3z2 =1.0000 +2.0000iz3 =1.7321 + 1.0000iz =0.3349 + 5.5801i【例2.5.2.5-2】复数矩阵的生成及运算A=[1,3;2,4]-[5,8;6,9]*iB=[1+5i,2+6i;3+8*i,4+9*i]C=A*BA =1.0000 - 5.0000i 3.0000 - 8.0000i2.0000 - 6.0000i 4.0000 - 9.0000iB =1.0000 + 5.0000i2.0000 + 6.0000i3.0000 + 8.0000i4.0000 + 9.0000iC =1.0e+002 *0.9900 1.1600 - 0.0900i1.1600 + 0.0900i 1.3700【例2.5.2.5-3】求上例复数矩阵C的实部、虚部、模和相角。
[整理版]matlab课后习题解答第二章
第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.1 Matlab的启动和退出启动Matlab的方法有多种,可以通过桌面图标、命令行或者启动器来打开Matlab。
退出Matlab可以直接关闭窗口或者使用命令"exit"。
1.2 Matlab的基本语法Matlab的基本语法与其他编程语言相似,包括变量的定义、运算符的使用、条件语句和循环语句等。
例如,定义一个变量x并赋值为5可以使用语句"x = 5;"。
1.3 Matlab的数据类型Matlab支持多种数据类型,包括数值型、字符型和逻辑型等。
数值型可以是整数或者浮点数,字符型用单引号或双引号表示,逻辑型只有两个值true和false。
第二章:向量和矩阵操作2.1 向量的定义和运算向量是一维数组,可以通过一对方括号来定义。
Matlab提供了丰富的向量运算函数,如加法、减法、乘法和除法等。
2.2 矩阵的定义和运算矩阵是二维数组,可以通过方括号和分号来定义。
Matlab提供了矩阵的加法、减法、乘法、转置和求逆等运算。
2.3 矩阵的索引和切片可以使用索引和切片来访问矩阵中的元素。
索引从1开始,可以使用冒号表示全部元素。
切片可以用来选择矩阵的一部分。
第三章:函数和脚本文件3.1 函数的定义和调用函数是一段独立的代码块,可以接受输入参数并返回输出结果。
在Matlab中,函数的定义以关键字"function"开头,调用函数使用函数名和参数。
3.2 脚本文件的编写和运行脚本文件是一系列Matlab语句的集合,可以保存为.m文件。
通过运行脚本文件,可以一次性执行多个语句,提高效率。
第四章:图形绘制和数据可视化4.1 图形绘制函数Matlab提供了丰富的图形绘制函数,可以绘制线图、散点图、柱状图等。
matlab上机练习及答案
第二、三次上机练习:目的:运行课本第四章及课堂上讲过的例子,掌握Matlab 的流程控制语句、函数及脚本文件的编程、调试方法。
作业:1、 完成下列操作:1) 求[100,999]之间能被21整除的个数。
2) 建立一个字符串向量(要求字符串向量中必须包含自己的姓名首字母,大小写均可),删除其中的大写字母2. 编写脚本文件,实现用magic(6)产生一矩阵,用for 循环指令求解其所有元素的和。
3. 定义一个函数文件,求∑=ni m i 1,要求在函数文件中包含能够通过help 查询到的说明;然后调用该函数文件求∑∑∑===++101501210011k k k k k k 的值。
4. 已知)7.1cos(12ln )7.1sin(++++=x xx y π,当x 取-3.0,-2.9,-2.8,…,2.8,2.9,3.0时, 1) 求各点的函数值;2) 求这些数据的平均值;5、求分段函数的值。
222603565231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩, 且, 0且及, 其它用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5时的值。
6、输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。
其中90分~100分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分以下为E 。
要求:分别用if 语句和switch 语句实现。
7、根据222221111...,6123n ππ=++++求的近似值。
当n 分别取100、1000、10000时,结果是多少?(要求:分别用循环结构和向量运算来实现)8、已知n=1时,f 1=1;n=2时,f 2=0;n=3时,f 3=1;n>3时,f n =f n-1 -2f n-2+ f n —3; 求f 1~ f 100中,最大值、最小值以及各数之和。
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习题二答案
matlab习题二答案Matlab习题二答案Matlab是一种强大的数值计算和科学计算软件,广泛应用于工程、科学、金融等领域。
在学习和使用Matlab的过程中,习题是一种很好的练习和巩固知识的方式。
本文将为大家提供一些Matlab习题二的答案,希望能对大家的学习有所帮助。
1. 编写一个函数,输入一个矩阵A,输出矩阵A的转置矩阵。
```matlabfunction B = transposeMatrix(A)B = A';end```2. 编写一个函数,输入一个矩阵A,输出矩阵A的每一行的平均值。
```matlabfunction avg = rowAverage(A)avg = mean(A, 2);end```3. 编写一个函数,输入一个矩阵A和一个标量k,输出矩阵A中大于k的元素个数。
```matlabfunction count = countGreaterThanK(A, k)count = sum(A(:) > k);end```4. 编写一个函数,输入一个矩阵A和一个标量k,输出矩阵A中大于k的元素的索引。
```matlabfunction indices = findGreaterThanK(A, k)indices = find(A > k);end```5. 编写一个函数,输入一个矩阵A,输出矩阵A的每一列的方差。
```matlabfunction variances = columnVariance(A)variances = var(A);end```6. 编写一个函数,输入一个矩阵A和一个标量k,将矩阵A中小于k的元素替换为0。
```matlabfunction B = replaceLessThanK(A, k)B = A;B(A < k) = 0;end```7. 编写一个函数,输入一个矩阵A和一个标量k,将矩阵A中小于k的元素替换为k。
```matlabfunction B = replaceLessThanK(A, k)B = A;B(A < k) = k;end```8. 编写一个函数,输入一个矩阵A和一个标量k,将矩阵A中大于k的元素替换为k。
matlab上机考试题及答案
matlab上机考试题及答案1. 题目:编写一个MATLAB函数,计算并返回一个向量中所有元素的平方和。
答案:函数定义如下:```matlabfunction sumOfSquares = calculateSumOfSquares(vector)sumOfSquares = sum(vector.^2);end```2. 题目:使用MATLAB的内置函数,找出一个矩阵中的最大元素及其位置。
答案:可以使用`max`函数来找出矩阵中的最大元素,同时使用`find`函数来获取其位置。
示例代码如下:```matlabA = [1, 2, 3; 4, 5, 6; 7, 8, 9];[maxValue, linearIndex] = max(A(:));[row, col] = ind2sub(size(A), linearIndex);```3. 题目:给定一个向量,使用MATLAB编写代码,实现向量元素的逆序排列。
答案:可以使用`flip`函数来实现向量的逆序排列。
示例代码如下:```matlabvector = [1, 2, 3, 4, 5];reversedVector = flip(vector);```4. 题目:编写一个MATLAB脚本,计算并绘制一个正弦波的图像。
答案:可以使用`sin`函数生成正弦波数据,并使用`plot`函数绘制图像。
示例代码如下:```matlabx = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);xlabel('x');ylabel('sin(x)');title('Sine Wave');```5. 题目:给定一个3x3的矩阵,使用MATLAB编写代码,计算其行列式。
答案:可以使用`det`函数来计算矩阵的行列式。
示例代码如下:```matlabmatrix = [1, 2, 3; 4, 5, 6; 7, 8, 9];determinant = det(matrix);```结束语:以上是MATLAB上机考试的题目及答案,希望能够帮助大家更好地掌握MATLAB的编程技巧和函数使用。
Matlab上机作业部分参考答案
3. 设A为 数组,B为一个行数大于3的数组,请给出 (1)删除A的第4、8、12三列的命令; (2)删除B的倒数第3行的命令; (3)求符号极限 (4)求 的3阶导数
lim tan( mx ) 的命令集; x 0 nx x3 y arctan ln(1 e 2 x ) 的命令集; x2
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8
0
2
4
6
8
10
12
14
某校60名学生的一次考试成绩如下: 93 75 83 93 91 85 84 82 77 76 77 95 94 89 91 88 86 83 96 81 79 97 78 75 67 69 68 84 83 81 75 66 85 70 94 84 83 82 80 78 74 73 76 70 86 76 90 89 71 66 86 73 80 94 79 78 77 63 53 55 1)计算均值、标准差、极差、偏度、峰度,画出直方图; 2)检验分布的正态性; 3)若检验符合正态分布,估计正态分布的参数并检验参数。 解答: x=[93 75 83 93 91 85 84 82 77 76 77 95 94 89 91 88 86 83 96 81 79 97 78 75 67 69 68 84 83 81 75 66 85 70 94 84 83 82 80 78 74 73 76 70 86 76 90 89 71 66 86 73 80 94 79 78 77 63 53 55]; mean(x) std(x) range(x) skewness(x) kurtosis(x) hist(x) h=normplot(x) [muhat,sigmahat,muci,sigmaci]=normfit(x) [H,sig,ci]=ttest(x,80.1)
matlab练习一、二答案
练习一答案1、一个三位整数各位数字的立方和等于该数本身,则称该数为水仙花数。
试编写程序找到,并输出全部水仙花数。
for n=100:999a=floor(n/100);b=floor(rem(n,100)/10);c=rem(n,10);if n==a^3+b^3+c^3s=nendend2、若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6 是完数。
求[1 500]之间的全部完数。
for i=2:500s=1;for j=2:(i-1)if (rem(i,j)==0)s=s+j;endendif s==isendend3、写一个函数pifun 计算下列级数:F(n)=4*(1-1/3+1/5-1/7+...)并使用tic 和toc 指令来测量pifun(1000000)的计算时间。
n=input('请输入n值:');tic;f=0;for i=1:nf=f+4*((-1)^(i+1))/(2*i-1) ;endftoc4、输入一个百分制成绩,要求输出成绩等级为A~E,即90~100 为A,80~89 为B,70~79为C,60~69 为D,60 以下为E。
m=input('请输入一个百分制成绩:');m=floor(m/10);switch mcase {10,9}disp('A');case 8disp('B');case 7disp('C');case 6disp('D');disp('E');otherwisedisp('E');end5、输入x,y 的值,并将它们的值互换后输出。
x = input('x=');y = input('y=');disp ([x,y]);t=x;x=y;y=t;disp ([x,y]);6、某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price 来表示):price<200 没有折扣;200≤price<500 3%折扣;500≤price<1000 5%折扣;1000≤price<2500 8%折扣;2500≤price<5000 10%折扣;5000≤price 14%折扣输入所售商品的价格,求其实际销售价格。
Matlab上机练习二答案
1、 求⎥⎦⎤⎢⎣⎡+-+-+-+-++=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.0000i3.0000 - 5.0000i 7.0000 + 6.0000i2.0000 + 7.0000i 9.0000 - 4.0000i1.0000 - 4.0000i 3.0000 + 9.0000i7.0000 + 5.0000i 4.0000 - 4.0000i2、计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。
>> a=[6 9 3;2 7 5];>> b=[2 4 1;4 6 8];>> a.*bans =12 36 38 42 403、 对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。
>> A=[4 9 2;7 6 4;3 5 7];>> B=[37 26 28]’;>> X=A\BX =-0.51184.04271.33184、 ⎥⎦⎤⎢⎣⎡-=463521a ,⎥⎦⎤⎢⎣⎡-=263478b ,观察a 与b 之间的六种关系运算的结果。
>> a=[1 2 3;4 5 6];>> b=[8 –7 4;3 6 2];>> a>bans =0 1 01 0 1>> a>=bans =0 1 01 0 1>> a<bans =1 0 10 1 0>> a<=bans =1 0 10 1 0>> a==bans =0 0 00 0 0>> a~=bans =1 1 11 1 15、[]7.0802.05--=a ,在进行逻辑运算时,a 相当于什么样的逻辑量。
(完整版)matlab上机练习题答案
6 9 3 2 4 11.计算a 与b 的数组乘积2 7 5 4 6 8>> a=[6 9 3;2 7 5];>> b=[2 4 1;4 6 8];>> a.*bans =12 36 38 42 404 9 2 372.对于AX B,如果A 7 6 4 ,B 26,求解X o3 5 7 287 16 185计算多项式除法(3乂3+13*+6乂+8)/0+4)>> d=deconv([3 13 6 8],[1 4])6求欠定方程组298的最小范数解5>> a=[2 4 7 4;9 3 5 6];>> b=[8 5]';>> x=pinv(a)*b-0.2151>> A=[4 9 2;7 6 4;3 5 7]; >> B=[37 26 28]';>> X=A\BX =-0.51184.04271.33180.44590.79490.27077用符号函数法求解方程at2+b*t+c=0 >> r=solve('a*t A2+b*t+c=0','t')1 2 5 8 7 43.a ,b ,观察a与b之间的3 64 3 6 2六种关系运算的结果[1/2/a*(-b+(bA2-4*a*c)A(1/2))] [1/2/a*(-b-(bA2-4*a*c)A(1/2))]>> a=[1 2 3;4 5 6]; >> b=[8 - 4;3 6 2]; >> a>bans =0 11 0 >> a>=bans =0 11 0 >> a<bans =1 00 1 >> a<=bans =1 00 1 >> a==bans =0 00 0 >> a~=bans =1 11 1 4计算多项式乘法111111(X2+2X+2)(X2+5X+4)8求矩阵A a11 a12的行列式值、逆和特征根a 21 a22>> syms a11 a12 a21 a22;>> A=[a11,a12;a21,a22]>> AD=det(A) % 行列式>> AI=inv(A) % 逆>> AE=eig(A) % 特征值A =[a11, a12][a21, a22]AD =a11*a22-a12*a21AI =[-a22/(-a11*a22+a12*a21), a12/(-a11*a22+a12*a21)][a21/(-a11*a22+a12*a21), -a11/(-a11*a22+a12*a21)]AE =>> c=conv([1 2 2],[1 5 4]) [1/2*a11+1/2*a22+1/2*(a11A2-2*a11*a22+a22A2+4*a12*a21)A(1/2)][1/2*a11+1/2*a22-1/2*(a11A2-2*a11*a22+a22A2+4*a12*a21)A(1/2)] 9 因式分解:X45X35X25X 6>> syms X;>> f=xA4-5*xA3+5*xA2+5*x-6;>> factor(f)ans =(X-1)*(X-2)*(X-3)*(X+1)x ,用符号微分求df/dx。
Matlab上机作业部分参考答案
上机练习二 参考答案
1. 产生一个1x10的随机矩阵,大小位于(-5 5),并 且按照从大到小的顺序排列好! 【求解】 a=10*rand(1,10)-5; b=sort(a,'descend')
上机练习二 参考答案
2、用MATLAB 语句输入矩阵A 和B
前面给出的是4 ×4 矩阵,如果给出A(5,6) = 5 命令,矩阵A将得出什么 结果?
Matlab 上机课作业
吴梅红 2012.10.15
上机练习一
上机练习一 参考答案
上机练习一 参考答案
上机练习一 参考答案
上机练习二
1. 产生一个1x10的随机矩阵,大小位于(-5 5),并且按 照从大到小的顺序排列好! 2、用MATLAB 语句输入矩阵A 和B
前面给出的是4 ×4 矩阵,如果给出A(5,6) = 5 命令,矩阵 A将得出什么结果? 3、假设已知矩阵A ,试给出相应的MATLAB 命令,将其全 部偶数行提取出来,赋给B 矩阵,用A =magic(8) 命令生成A 矩阵,用上述的命令检验一下结果是不是正确。
【求解】用课程介绍的方法可以直接输入这两个矩阵 >> A=[1 2 3 4; 4 3 2 1; 2 3 4 1; 3 2 4 1] A= 1234 4321 2341 3241 若给出A(5,6)=5 命令,虽然这时的行和列数均大于A矩阵当前的维数, 但仍然可以执行该语句,得出 >> A(5,6)=5 A= 123400 432100 234100 324100 000005 复数矩阵也可以用直观的语句输入 3+2i 4+1i; 4+1i 3+2i 2+3i 1+4i; 2+3i 3+2i 4+1i 1+4i; 3+2i 2+3i 4+1i 1+4i]; B= 1.0000 + 4.0000i 2.0000 + 3.0000i 3.0000 + 2.0000i 4.0000 + 1.0000i 4.0000 + 1.0000i 3.0000 + 2.0000i 2.0000 + 3.0000i 1.0000 + 4.0000i 2.0000 + 3.0000i 3.0000 + 2.0000i 4.0000 + 1.0000i 1.0000 + 4.0000i 3.0000 + 2.0000i 2.0000 + 3.0000i 4.0000 + 1.0000i 1.0000 + 4.0000i
matlab第二章习题答案
第一大题:(1)a = 7/3b = sym(7/3)c = sym(7/3,'d')d = sym('7/3')v1=vpa(abs(a-d))v2=vpa(abs(b-d))v3=vpa(abs(c-d))a =2.3333b =7/3c =2.3333333333333334813630699500209d =7/3v1 =0.0v2 =0.0v3 =0.00000000000000014802973661668756666666667788716(2)a = pi/3b = sym(pi/3)c = sym(pi/3,'d')d = sym('pi/3')v1=vpa(abs(a-d))v2=vpa(abs(b-d))v3=vpa(abs(c-d))a =1.0472b =pi/3c =1.047197551196597631317786181171d =pi/3v1 =0.0v2 =0.0v3 =0.00000000000000011483642827992216762806615818554(3)a = pi*3^(1/3)b = sym(pi*3^(1/3))c = sym(pi*3^(1/3),'d')d = sym('pi*3^(1/3)')v1=vpa(abs(a-d))v2=vpa(abs(b-d))v3=vpa(abs(c-d))a =4.5310b =1275352044764433/281474976710656c =4.5309606547207899041040946030989d =pi*3^(1/3)v1 =0.00000000000000026601114166290944374842393221638 v2 =0.00000000000000026601114166290944374842393221638 v3 =0.0000000000000002660111416629094726767991785515第二大题:(1)c1=3/7+0.1c1 =0.5286双精度(2)c2=sym(3/7+0.1)c2 =37/70符号(3)c3=vpa(sym(3/7+0.1))c3 =0.52857142857142857142857142857143完整显示精度第三大题:(1)findsym(sym('sin(w*t)'),1)ans =w(2)findsym(sym('a*exp(-X)' ) ,1)ans =a(3)findsym(sym('z*exp(j*theta)'),1)ans =z第四大题:A=sym('[a11 a12 a13;a21 a22 a23;a31 a32 a33]')A =[ a11, a12, a13][ a21, a22, a23][ a31, a32, a33]DA=det(A)DA =a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31w=inv(A)w =[ (a22*a33 - a23*a32)/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 +a12*a23*a31 + a13*a21*a32 - a13*a22*a31), -(a12*a33 -a13*a32)/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 +a13*a21*a32 - a13*a22*a31), (a12*a23 - a13*a22)/(a11*a22*a33 -a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31)] [ -(a21*a33 - a23*a31)/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 +a12*a23*a31 + a13*a21*a32 - a13*a22*a31), (a11*a33 -a13*a31)/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 +a13*a21*a32 - a13*a22*a31), -(a11*a23 - a13*a21)/(a11*a22*a33 -a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31)] [ (a21*a32 - a22*a31)/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 +a12*a23*a31 + a13*a21*a32 - a13*a22*a31), -(a11*a32 -a12*a31)/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 +a13*a21*a32 - a13*a22*a31), (a11*a22 - a12*a21)/(a11*a22*a33 -a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31)] IAs=subexpr(w,'d')d =1/(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)]第六大题:syms ksyms x positives_s=2/(2*k+1)*((x-1)/(x+1))^(2*k+1)s_ss=simple(symsum(s_s,k,0,inf))s_s =(2*((x - 1)/(x + 1))^(2*k + 1))/(2*k + 1)警告: simple will be removed in a future release. Use simplify instead. [> In sym.simple at 41]s_ss =log(x)第八大题:syms x clearsyms xh=exp(-abs(x))*abs(sin(x))si=vpa(int(h,-5*pi,1.7*pi),64)h =abs(sin(x))*exp(-abs(x))si =1.087849417255503701102633764498941389696991336803454392428439159 第九大题:syms x y clearsyms x yr=int(int(x^2+y^2,y,1,x^2),x,1,2)r =1006/105第十大题:syms t x;f=sin(t)/t;y=int(f,t,0,x)y1=subs(y,x,sym('4.5'))ezplot(y,[0,2*pi])y =sinint(x)y1 =syms x clearsyms x ny=sin(x)^nyn=int(y,0,1/2*pi)y31=vpa(subs(yn,n,sym('1/3')))y32=vpa(subs(yn,n,1/3))y =sin(x)^nyn =piecewise([-1 < real(n), beta(1/2, n/2 + 1/2)/2], [real(n) <= -1, int(x^n/(1 - x^2)^(1/2), x, 0, 1)])y31 =1.2935547796148952674767575125656y32 =1.2935547796148952674767575125656第二十题:clearsyms y xy=dsolve('(Dy*y)/5+x/4=0','x')y =2^(1/2)*(C6 - (5*x^2)/8)^(1/2)-2^(1/2)*(C6 - (5*x^2)/8)^(1/2)y1=subs(y,'C6',1)y1 =2^(1/2)*(1 - (5*x^2)/8)^(1/2)-2^(1/2)*(1 - (5*x^2)/8)^(1/2)clfhy1=ezplot(y1(1),[-2,2,-2,2],1)set(hy1,'Color','r')grid onhold onhy2=ezplot(y1(2),[-2,2,-2,2],1)set(hy2,'Color','b')grid onxlabel('Y')ylabel('X')hold offbox onlegend('y(1)','y(2)','Location','Best')hy1 =174.0155hy2 =177.0145。
MATLAB-机设678-上机习题二-解答
MATLAB上机习题二请按以下步骤完成上机实验:1)在FTP上下载“MATLAB上机习题二.doc”文件,所有习题列在该文件内;2)在MATLAB中完成所有习题;3)如果是仅需要在命令窗口输入完成的习题,则只需将屏幕截图粘贴到相应习题后面;3)如果习题是问答题,请将答案写在题目后;4)如果有的习题要求提供脚本文件,请将脚本文件内容拷贝到相应习题后,并将运行结果的截图粘贴到相应习题后;5)将文件保存并重命名为自己的学号,例如“20110771.doc”,上传到FTP上的“上传作业”目录1. 编写脚本程序,命名为barbell.m,完成如下计算:如图1所示的杠铃,每个球的半径是10cm,两个求直接链接杆的长度是15cm,杆的直径为1cm,计算杠铃的体积和表面积;使用disp函数显示计算结果。
(提示:disp函数的用法参考教材的例2-31,面积计算时相交部分球冠可近似为圆,体积计算时可忽略重叠的球冠体积)解答:(拷贝barbell.m文件内容到如下方框中):%忽略相交部分球冠的表面积和体积差%参数定义r1 = 10;r2 = 1;h = 15;%1)体积V = 2*4/3*pi*r1^3 + pi^r2^2*h;%2)表面积S = 2*4*pi*r1^2 + 2*pi^r2*h;disp('体积为');disp(V);disp('体积为') disp(S);运行屏幕截图:2. 高中化学课本中学习过描述气体压强(p )、温度(T )、体积(V )和气体摩尔数(n )之间的理想气体状态方程:pV nRT =其中,R 为理想气体常数。
上述状态方程描述的是低压强和高温度时气体的特性。
在1873年,范德瓦尔斯对这个方程进行了修正,使其更好地描述气体在不同压强和温度条件下的状态,该方程被称为范德瓦尔斯方程:()22n a p V nb nRT V +−=该方程新增了a 和b 两个变量,用来表示纯净气体的属性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、 求⎥⎦⎤⎢⎣⎡+-+-+-+-++=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.0000i3.0000 - 5.0000i 7.0000 + 6.0000i2.0000 + 7.0000i 9.0000 - 4.0000i1.0000 - 4.0000i 3.0000 + 9.0000i7.0000 + 5.0000i 4.0000 - 4.0000i2、计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。
>> a=[6 9 3;2 7 5];>> b=[2 4 1;4 6 8];>> a.*bans =12 36 38 42 403、 对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。
>> A=[4 9 2;7 6 4;3 5 7];>> B=[37 26 28]’;>> X=A\BX =-0.51184.04271.33184、 ⎥⎦⎤⎢⎣⎡-=463521a ,⎥⎦⎤⎢⎣⎡-=263478b ,观察a 与b 之间的六种关系运算的结果。
>> a=[1 2 3;4 5 6];>> b=[8 –7 4;3 6 2];>> a>bans =0 1 01 0 1>> a>=bans =0 1 01 0 1>> a<bans =1 0 10 1 0>> a<=bans =1 0 10 1 0>> a==bans =0 0 00 0 0>> a~=bans =1 1 11 1 15、[]7.0802.05--=a ,在进行逻辑运算时,a 相当于什么样的逻辑量。
相当于a=[1 1 0 1 1]。
6、 角度[]604530=x ,求x 的正弦、余弦、正切和余切。
>> x=[30 45 60];>> x1=x/180*pi;>> sin(x1)ans =0.5000 0.7071 0.8660>> cos(x1)ans =0.8660 0.7071 0.5000>> tan(x1)ans =0.5774 1.0000 1.7321>> cot(x1)ans =1.7321 1.0000 0.57747、 用四舍五入的方法将数组[2.4568 6.3982 3.9375 8.5042]取整。
>> b=[2.4568 6.3982 3.9375 8.5042];>> round(b)ans =2 6 4 98、设⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡------=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'C1 =19 -82 3012 27 3-38 54 29>> C2=A'*BC2 =-15 16 -24 3663 -17 93 -10522 6 117 -6019 46 84 -10>> C3=A.*BC3 =5 16 24 -26-18 -12 -15 72-2 -21 108 -56>> inv(C1)ans =0.0062 0.0400 -0.0106-0.0046 0.0169 0.00300.0168 0.0209 0.0150>> inv(C2)Warning: Matrix is close to singular or badly scaled.Results may be inaccurate. RCOND = 8.997019e-019.ans =1.0e+015 *-0.9553 -0.2391 -0.1997 0.27000.9667 0.2420 0.2021 -0.2732-0.4473 -0.1120 -0.0935 0.1264-1.1259 -0.2818 -0.2353 0.3182>> inv(C3)??? Error using ==> invMatrix must be square.9、设x=rcost+3t,y=rsint+3,分别令r=2,3,4,画出参数t=0~10区间生成的x~y曲线。
>> t=linspace(0,10);>> r1=2;>> x1=(r1*cos(t)+3*t);>> y1=r1*sin(t)+3;>> r2=3;>> x2=(r2*cos(t)+3*t);>> y2=r2*sin(t)+3;>> r3=4;>> x3=(r3*cos(t)+3*t);>> y3=r3*sin(t)+3;>> plot(x1,y1,'r',x2,y2,'b',x3,y3,'m')10、设f(x)=x5- 4x4 +3x2- 2x+ 6(1) 在x=[-2,8]之间取100个点,画出曲线,看它有几个过零点。
(提示:用polyval 函数)>> x=linspace(2,8,100);>> y=polyval([1 0 -4 3 -2 6],x);>> plot(x,y,'b',x,0,'y')(2) 用roots函数求此多项式的根。
t=[1 0 -4 3 -2 6]p=roots(t)12、求解多项式x3-7x2+2x+40的根。
>> r=[1 -7 2 40];>> p=roots(r);-0.21510.44590.79490.270713、符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t的变化范围为[0,2 ]。
>> syms t>> ezplot(sin(3*t)*cos(t),sin(3*t)*sin(t),[0,pi])14、设,求x=sym('x'); y=(sin(x))^4+(cos(x))^4;diff(y,10)15、dx x x ⎰-632)9(x=sym('x');int((sqrt((9-x^2)^3)/x^6),x)16、⎰+213x x dx x=sym('x');int(x+x^3,x,1,2)17、求级数的和: ∑∞=+122n n n sym(‘n ’);symsum(n+2/2^n,n,1,inf) 18、利用函数int 计算二重不定积分 x=sym('x'); y=sym('y');z=(x+y)*exp(-x*y);a=int(z,x);int(a,y)19、试求出如下极限。
(1)x x x x 1)93(lim +∞→; (2)11lim 00-+→→xy xy y x ;(1)>> syms x;f=(3^x+9^x)^(1/x);l=limit(f,x,inf)ans=9(2)>> syms x y;f=x*y/(sqrt(x*y+1)-1);limit(limit(f,x,0),y,0)ans =2(3)>> syms x y;f=(1-cos(x^2+y^2))*exp(x^2+y^2)/(x^2+y^2);limit(limit(f,x,0),y,0)ans =20、已知参数方程⎩⎨⎧-==t t t y t x sin cos cos ln ,试求出x y d d 和3/22d d π=t x y >> syms t;x=log(cos(t));y=cos(t)-t*sin(t);diff(y,t)/diff(x,t)ans =-(-2*sin(t)-t*cos(t))/sin(t)*cos(t)>> f=diff(y,t,2)/diff(x,t,2);subs(f,t,sym(pi)/3)ans =3/8-1/24*pi*3^(1/2)21、假设⎰-=xyt t e y x f 0d ),(2,试求222222y f y x f x f y x ∂∂+∂∂∂-∂∂>> syms x y t >> s=int(exp(-t^2),t,0,x*y);>> x/y*diff(f,x,2)-2*diff(diff(f,x),y)+diff(f,y,2)ans =2*x^2*y^2*exp(-x^2*y^2)-2*exp(-x^2*y^2)-2*x^3*y*exp(-x^2*y^2)22试求出下面的极限。
dxdye y x xy ⎰⎰-+)((1)⎥⎦⎤⎢⎣⎡-++-+-+-∞→1)2(1161141121lim 2222n n ; (2))131211(lim 2222ππππn n n n n n n ++++++++∞→ >> syms k n;symsum(1/((2*k)^2-1),k,1,inf) ans =1/2>> limit(symsum(1/((2*k)^2-1),k,1,n),n,inf)ans =1/2(2)>> limit(n*symsum(1/(n^2+k*pi),k,1,n),n,inf)ans =123、假设一曲线数据点为x=0:2:4*pi y=sin(x).*exp(-x/5)试将x 的间距调成0.1,并用下列方法进行内插:(1) 线性内插法(method=’linear’)(2) 样条内插法(method=’spline’)(3) 三次多项式内插法(method=’cubic’)(4) 多项式拟合法:直接利用6次多项式去通过7个数据点请将这些内插法的结果及原先的数据点画在同一个图上25、阅读以下程序并在指定位置上写注释(6分)t=(0:0.02:2)*pi;x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z,'r-',x,y,z,'bd') %___(1)_绘制一条红色连续曲线和蓝色菱形离散点view([-82,58]) %___(2)__以方位角-82度,俯角58度观察视图box on %显示坐标轴的矩形框legend('图形','视角') %__ (3)_标注图例______hold on %__(4)_保持图形_____x=-4:4;y=x;[X,Y]=meshgrid(x,y); %__(5)_生成平面网格坐标矩阵__Z=X.^2+Y.^2;surf(X,Y,Z); %__ (6)_绘制三维曲面_26、编写一个M 函数文件fun_es(x),计算如下函数:)sin(5.023/x x e y x -=,其中参数可以为标量,也可以为向量。