MATLAB实验题答案

合集下载

MATLAB实验题答案

MATLAB实验题答案

result5 =( 1 ) a = 1 : 2 : 5a =1 3 5( 2 ) b = [ a' , a' , a' ;a ]b =1 1 13 3 35 5 51 3 5( 3 ) c = a + b ( 2 , : )c =4 6 82、下列运算是否合法,为什么如合法,结果是多少>> result2=a*bError using *Inner matrix dimensions must agree. >> result3=a+bresult3 =3 6 258 11>> result4=b*dresult4 =31 22 2240 49 1331 22 2240 49 13-5 -8 7>> result6=a.*b result6 =2 8 -3415 30>> result7=a./b result7 =>> result8=Attempt to reference field of non-structure array.>> result9=a.\b result9 =>> result10=a92result10 =1 4 916 25 36>> resultl 1=29aresult11 =2 4 816 32 64>>result5=[b;c']*d 3、用MATLAB求解下面的的方程组。

1、求以下变量的值,并在MATLAB^验证。

1 2 x13 2 x211 5 x32 13 x4>> A=[7 2 1 -2;9 15 3 -2;-2 -2 11 5;1 3 2 13] >> B=[4 7 -1 0]>> B=B'>> x=inv(A)*B>> A1=[1 1 1 0;1 2 1 -1;2 -1 0 -3;3 3 5 -6] >> B2=[1;8;3;5]>> x2=inv(A1)*B27 2 1 29 15 3 22 2 11 51 32 13(1)求矩阵A的秩(rank)(2)求矩阵 A 的行列式(determinant)(3)求矩阵 A 的逆(inverse)(4)求矩阵 A 的特征值及特征向量(eigenvalue and eigenvector)>> A3=[7 2 1 -2;9 15 3 -2;-2 -2 11 5;1 3 2 13] >> r=rank(A3) >> b=inv(A3)>> a=det(A3) >> [V,D]=eig(A3)10n 10查看y 的值)m1=0;for m=-10:10 m仁m1+2^m;endm1m1 =6、求分段函数的值。

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实验及答案

Matlab实验及答案

实验一、MATLAB基本操作一、实验目的2.学习使用图形函数计算器命令funtool及其环境。

3. 学习使用help命令进行帮助4. 掌握向量与矩阵的创建以及矩阵的基本操作5. 掌握数组与矩阵的概念二、实验内容熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;掌握数组与矩阵的概念;学会使用help命令进行帮助;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool;1.命令窗口的简单使用(1)简单矩阵的输入(自由创建)x=[1 3 5;2 4 6]x =1 3 52 4 6(2)求[12+2×(7-4)]÷32的算术运算结果,总结算术运算符先级[12+2*(7-4)]/3^2ans =22.有关向量、矩阵或数组的一些运算(1)设A=15;B=20;求C=A+B与c=a+b的区别A=15;B=20;>> C=A+BC =35>> c=a+bUndefined function or variable 'a'.(2)设A=[1 2 3;4 5 6;7 8 9],B=[9 8 7;6 5 4;3 2 1];求A*B与A.*B,分析原因?(A*B是两个矩阵相乘,A.*B是对应元素相乘)A=[1 2 3;4 5 6;7 8 9];B=[9 8 7;6 5 4;3 2 1];>> A*Bans =30 24 1884 69 54138 114 90>> A.*Bans =9 16 2124 25 2421 16 9(3)设a=10,b=20;求i=a/b与j=a\ba=10;>> b=20;>> i=a/bi =0.5000>> j=a\bj =2(4)设a=[1 -2 3;4 5 -4;5 -6 7]请设计出程序,分别找出小于0的矩阵元素的线性索引以及行列索引(sub2ind/ind2sub)。

MATLAB实验及答案详解

MATLAB实验及答案详解

>> C3
C3 =
9 22 2
8 19 -6
36 88 3
>> D1
D1 =
2 -2 3
655
16 -10 3
>> D2
D2 =
0.5000 -2.0000 0.3333
0.6667 5.0000 0.2000
1.0000 -10.0000 3.0000
>> D3
D3 =
141
4 25 1
16 100 9
5.0000 - 5.0000i 6.0000 - 6.0000i
②求矩阵的逆矩阵
>> B=[1 2;3 4];
>> B1=inv(B) 运行后显示:
B1 = -2.0000 1.0000 1.5000 -0.5000
>> B2=B^(-1) 运行后显示: B2 =
-2.0000 1.0000 1.5000 -0.5000 ③关于矩阵求幂 >>A=[1 2;3 4]; B=[ 2 1;3 2]; >>A.^B 运行后显示: ans =
>>A=[1,2,3;4,5,6] 运行后显示: A= 123 456
在命令窗口输入:
>>b=A(1,2)
运行后显示:b =2
在命令窗口输入:
>>A(2,3)=-3
运行后显示:A =
123
4 5 -3
矩阵的操作
>>A=[1,2,3;4,5,6;7,8,9]
>>B=diag(A) %X 为矩阵时,V=diag(X,k)得到列向量 V,它取自 X 的第 K 个对角

MATLAB实验二运算基础答案

MATLAB实验二运算基础答案

实验二、MA TLAB运算基础一、实验目的掌握MA TLAB各种表达式的书写规则及常用函数的使用。

掌握MA TLAB中字符串、元胞数组和结构的常用函数的使用。

二、实验内容及步骤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)求它们的乘积C2)将矩阵C的右下角3x2子矩阵赋给D>> A=[1:1:5;6:1:10;11:1:15;16:1:20;21:1:25];B=[3 0 16;17 -6 9;0 23 -4;9 7 0;4 13 11];...C=A*B,D=C(3:5,2:3)C =93 150 77258 335 237423 520 397588 705 557753 890 717D =520 397705 557890 7172、完成下列操作1)求[100,999]之间能被61整除的数及其个数(提示:先利用冒号表达式,再利用find和length函数。

)>> A=[100:999];B=find(rem(A,61)==0),B_total=length(B)B =23 84 145 206 267 328 389 450 511 572633 694 755 816 877B_total =152)建立一个字符串向量,删除其中的大写字母(提示:利用find函数和空矩阵。

)>> a=['MA TLAB is important'], b=abs(a); c=find(b<=90 & b>=65) , a(c)=[],a =MA TLAB is importantc = 1 2 3 4 5 6a =is important⑶已知A=[23 10 -78 0;41 -45 65 5;32 5 0 32;6 -5492 14],取出其前3行构成矩阵B,其前两列构成矩阵C,其左下角3x2子矩阵构成矩阵D,B与C的乘积构成矩阵E,分别求E<D、E&D、E|D、~E|~D。

MATLAB全部实验及答案

MATLAB全部实验及答案

MATLAB全部实验及答案实验一、MATLAB基本操作实验内容及步骤1、命令窗口的简单使用(1)简单矩阵的输入(2)求[12+2×(7-4)]÷32的算术运算结果2、有关向量、矩阵或数组的一些运算(1)设A=15;B=20;求C=A+B与c=a+b?(2)设A=[1 2 3;4 5 6;7 8 9],B=[9 8 7;6 5 4;3 2 1];求A*B与A.*B?A*B就是线代里面的矩阵相乘 A.*B是对应位置的元素相乘(3)设a=10,b=20;求i=a/b=0.5与j=a\b=2?(4)设a=[1 -2 3;4 5 -4;5 -6 7]请设计出程序,分别找出小于0的矩阵元素及其位置(单下标、全下标的形式),并将其单下标转换成全下标。

clear,clca=[1 -2 3;4 5 -4;5 -6 7];[x,y]=find(a<0);c=[];for i=1:length(x)c(i,1)=a(x(i),y(i));c(i,2)=x(i);c(i,3)=y(i);c(i,4)=(y(i)-1)*size(a,2)+x(i);endc(5)在MATLAB命令行窗口运行A=[1,2;3,4]+i*[5,6;7,8];看结果如何?如果改成运行A=[1,2;3,4]+i[5,6;7,8],结果又如何?前面那个是虚数矩阵,后面那个出错(6)请写出完成下列计算的指令:a=[1 2 3;3 4 2;5 2 3],求a^2=?,a.^2=?a^2= 22 16 1625 26 2326 24 28a.^2=1 4 99 16 425 4 9(7)有一段指令如下,请思考并说明运行结果及其原因clearX=[1 2;8 9;3 6];X( : ) 转化为列向量(8)使用三元组方法,创建下列稀疏矩阵2 0 8 00 0 0 10 4 0 06 0 0 0方法一:clear,clcdata=[2 8 1 4 6];ir=[1 1 2 3 4 ];jc=[1 3 4 2 1];s=sparse(ir,jc,data,4,4);full(s)方法二:不用三元组法clear,clca=zeros(4,4);a(1,[1,3])=[2,8];a(2,4)=1;a(3,2)=4;a(4,1)=6;a(9) 写出下列指令的运行结果>> A = [ 1 2 3 ]; B = [ 4 5 6 ];>> C = 3.^A>> D = A.^B3、 已知⎪⎭⎫ ⎝⎛+⋅=-334sin 234πt e y t 若需要计算t ∈[-1,1],取间隔为0.01,试计算出相对应的y 值。

MATLAB数学实验第二版课后练习题含答案

MATLAB数学实验第二版课后练习题含答案

MATLAB数学实验第二版课后练习题含答案课后练习题MATLAB数学实验第二版的课后练习题如下:第一章课后练习题1.编写MATLAB程序,计算并输出下列公式的结果:y = \\frac{1}{\\sqrt{2\\pi\\sigma^2}} e^{-\\frac{(x-\\mu)^2}{2\\sigma^2}}其中,x, $\\mu$, $\\sigma$ 分别由用户输入。

要求输出结果精确至小数点后两位。

答案如下:x=input('请输入 x 的值:');mu=input('请输入 mu 的值:');sigma=input('请输入 sigma 的值:');y=1/sqrt(2*pi*sigma^2) *exp(-(x-mu)^2/ (2*sigma^2));fprintf('y = %.2f\', y);2.编写MATLAB程序,求解下列方程的解:4x + y = 11\\\\x + 2y = 7答案如下:A= [4,1;1,2];B= [11;7];X=inv(A) *B;fprintf('x = %.2f, y = %.2f\', X(1), X(2));第二章课后练习题1.编写MATLAB程序,计算下列多项式的值:P(x) = x^4 - 2x^3 + 3x^2 - x + 1其中,x 由用户输入。

要求输出结果精确至小数点后两位。

答案如下:x=input('请输入 x 的值:');y=x^4-2*x^3+3*x^2-x+1;fprintf('P(%.2f) = %.2f\', x, y);2.编写MATLAB程序,绘制下列函数的图像:f(x) = \\begin{cases} x + 1, & x < 0 \\\\ x^2, & 0 \\leq x < 1 \\\\ 2x - 1, & x \\geq 1 \\end{cases}答案如下:x=-2:0.01:2;y1=x+1;y2=x.^2.* ((x>=0) & (x<1));y3=2*x-1;plot(x,y1,x,y2,x,y3);legend('y1 = x + 1','y2 = x^2','y3 = 2x - 1');总结本文提供了《MATLAB数学实验第二版》的部分课后练习题及其答案。

MATLAB数学实验100例题解

MATLAB数学实验100例题解

一元函数微分学实验1 一元函数的图形(基础实验)实验目的 通过图形加深对函数及其性质的认识与理解, 掌握运用函数的图形来观察和分析 函数的有关特性与变化趋势的方法,建立数形结合的思想; 掌握用Matlab 作平面曲线图性的方法与技巧。

初等函数的图形2 作出函数x y tan =和x y cot =的图形观察其周期性和变化趋势。

解:程序代码:>〉 x=linspace (0,2*pi,600); t=sin (x)。

/(cos (x )+eps );plot(x ,t);title (’tan (x )');axis ([0,2*pi ,-50,50]); 图象:程序代码: 〉〉 x=linspace (0,2*pi,100); ct=cos (x)。

/(sin(x)+eps ); plot(x,ct );title(’cot(x)');axis ([0,2*pi ,—50,50]); 图象:cot(x)4在区间]1,1[-画出函数xy 1sin =的图形。

解:程序代码:>> x=linspace (-1,1,10000);y=sin(1。

/x ); plot (x,y ); axis ([-1,1,—2,2]) 图象:二维参数方程作图6画出参数方程⎩⎨⎧==t t t y tt t x 3cos sin )(5cos cos )(的图形:解:程序代码:>〉 t=linspace(0,2*pi,100); plot(cos(t ).*cos (5*t ),sin(t )。

*cos(3*t)); 图象:极坐标方程作图8 作出极坐标方程为10/t e r =的对数螺线的图形. 解:程序代码:〉〉 t=0:0.01:2*pi ; r=exp (t/10);polar(log(t+eps ),log (r+eps)); 图象:90270分段函数作图10 作出符号函数x y sgn =的图形。

matlab数学实验考试题及答案

matlab数学实验考试题及答案

matlab数学实验考试题及答案一、选择题(每题2分,共10分)1. MATLAB中用于生成0到1之间均匀分布的随机数的函数是?A. randB. randiC. randnD. randperm答案:A2. 下列哪个命令可以计算矩阵的行列式?A. detB. rankC. eigD. inv答案:A3. MATLAB中用于求解线性方程组的命令是?A. solveB. linsolveC. fsolveD. ode45答案:A4. 在MATLAB中,如何创建一个3x3的单位矩阵?A. eye(3)B. ones(3)C. zeros(3)D. identity(3)答案:A5. MATLAB中用于绘制二维图形的函数是?A. plotB. surfC. meshD. contour答案:A二、填空题(每题3分,共15分)1. MATLAB中,使用________函数可以计算矩阵的迹。

答案:trace2. 若要在MATLAB中创建一个从1到10的向量,可以使用________函数。

答案:1:103. MATLAB中,使用________函数可以计算矩阵的特征值。

答案:eig4. 若要在MATLAB中绘制一个正弦波,可以使用________函数。

答案:sin5. MATLAB中,使用________函数可以计算矩阵的逆。

答案:inv三、简答题(每题10分,共20分)1. 描述MATLAB中如何使用循环结构来计算并打印1到100之间所有奇数的和。

答案:可以使用for循环结构,初始化一个变量sum为0,然后遍历1到100之间的每个数,使用模运算符判断是否为奇数,如果是,则将其加到sum上,最后打印sum的值。

2. 简述MATLAB中如何使用条件语句来检查一个数是否为素数,并打印出所有小于100的素数。

答案:可以使用for循环遍历2到99之间的每个数,对于每个数,使用一个while循环检查它是否有除1和它本身之外的因数,如果没有,则使用if语句判断该数是否为素数,如果是,则打印该数。

MATLAB-课后实验答案

MATLAB-课后实验答案

实验一 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:: 解:2. 已知:1234413134787,2033657327A B --⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦求下列表达式的值:`(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 和B123453166789101769,111213141502341617181920970212223242541311A B ⎡⎤⎡⎤⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥==-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦(1) 求它们的乘积C 。

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

(3) 查看MATLAB 工作空间的使用情况。

解:. 运算结果: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 +⎡⎤=⎢⎥⎣⎦。

matlab部分实验题答案

matlab部分实验题答案

这些答案不一定正确,大家可以参考参考,还有部分没完成的,希望有人能快点做出来。

实验一1、(1)>> z1=(2*sin(85*pi/180))/(1+exp(2))z1 =0.2375(2)>> x=[2,1+2i;-0.45,5]x =2.0000 1.0000 + 2.0000i-0.4500 5.0000>> z2=1/2*log(1+sqrt(1+x^2))z2 =0.5738 - 0.0333i 0.7952 + 0.2117i0.2869 + 0.4861i 0.9005 - 0.0073i2、>> A=[12,34,-4;34,7,87;3,65,7]A =12 34 -434 7 873 65 7>> B=[1,3,-1;2,0,3;3,-2,7]B =1 3 -12 0 33 -2 7>> I=eye(3)I =1 0 00 1 00 0 1>> A+6*Bans =18 52 -1046 7 10521 53 49>> A-B+Ians =12 31 -332 8 840 67 1>> A*Bans =68 44 62309 -72 596154 -5 241>> A.*Bans =12 102 468 0 2619 -130 49>> A^3ans =37226 233824 48604247370 149188 60076678688 454142 118820>> A.^3ans =1728 39304 -6439304 343 65850327 274625 343 >> A/Bans =16.4000 -13.6000 7.600035.8000 -76.2000 50.200067.0000 -134.0000 68.0000>> B\Aans =109.4000 -131.2000 322.8000-53.0000 85.0000 -171.0000-61.6000 89.8000 -186.2000>> [A,B]ans =12 34 -4 1 3 -134 7 87 2 0 33 65 7 3 -2 7 >> [A([1,3],:);B^2]ans =12 34 -43 65 74 5 111 0 1920 -5 40>>3、>> A=[1,2,3,4,5;6,7,8,9,10;11,12,13,14,15;16,17,18,19,20;21,22,23,24,25]A =1 2 3 4 56 7 8 9 1011 12 13 14 1516 17 18 19 2021 22 23 24 25>> B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11]B =3 0 1617 -6 90 23 -49 7 04 13 11>> C=A*BC =93 150 77258 335 237423 520 397588 705 557753 890 717>> D=C(3:5,2:3)D =520 397705 557890 717实验二2、(1)>> syms xs=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/(sin(x)^3) Lsk=limit(s,x,0)s =(x*(exp(sin(x)) + 1) - 2*exp(tan(x)) + 2)/sin(x)^3 Lsk =-1/2(2)>> syms a t x>> A=[a^x,t^3;t*cos(x),log(x)]A =[ a^x, t^3][ t*cos(x), log(x)]>> df=diff(A)dfdt2=diff(A,t,2)dfdxdt=diff(diff(A,x),t)df =[ a^x*log(a), 0][ -t*sin(x), 1/x]dfdt2 =[ 0, 6*t][ 0, 0]dfdxdt =[ 0, 0][ -sin(x), 0]>>实验三1、(3)>> a=-3.0:0.1:3.0z3=exp(0.3*a).*sin(a+0.3)a =Columns 1 through 8-3.0000 -2.9000 -2.8000 -2.7000 -2.6000 -2.5000 -2.4000 -2.3000Columns 9 through 16-2.2000 -2.1000 -2.0000 -1.9000 -1.8000 -1.7000 -1.6000 -1.5000Columns 17 through 24-1.4000 -1.3000 -1.2000 -1.1000 -1.0000 -0.9000 -0.8000 -0.7000Columns 25 through 32-0.6000 -0.5000 -0.4000 -0.3000 -0.2000 -0.1000 0 0.1000Columns 33 through 400.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000Columns 41 through 481.0000 1.1000 1.2000 1.3000 1.4000 1.5000 1.6000 1.7000Columns 49 through 561.8000 1.90002.0000 2.1000 2.2000 2.3000 2.40002.5000Columns 57 through 612.6000 2.7000 2.8000 2.90003.0000z3 =Columns 1 through 8-0.1738 -0.2160 -0.2584 -0.3005 -0.3418 -0.3819 -0.4202 -0.4561Columns 9 through 16-0.4891 -0.5187 -0.5442 -0.5653 -0.5813 -0.5918 -0.5962 -0.5943Columns 17 through 24-0.5856 -0.5697 -0.5465 -0.5157 -0.4772 -0.4310 -0.3771 -0.3157Columns 25 through 32-0.2468 -0.1710 -0.0885 0.0000 0.0940 0.1928 0.2955 0.4013Columns 33 through 400.5091 0.6178 0.7264 0.8334 0.9378 1.0381 1.13291.2209Columns 41 through 481.3007 1.3707 1.4297 1.4764 1.5093 1.5273 1.5293 1.5142Columns 49 through 561.4813 1.4296 1.3588 1.2683 1.1579 1.0278 0.8780 0.7092Columns 57 through 610.5219 0.3172 0.0963 -0.1393 -0.3880>>(4)>> syms tt=0:0.5:2.5if t>=0t<1z4=t.^2;elseif t>=1t<2z4=t.^2-1;elseif t>=2t<3z4=t.^2-2.*t+1;endt =0 0.5000 1.0000 1.5000 2.0000 2.5000 ans =1 1 0 0 0 0>>4(1)>> m=100:999;n=find(mod(m,21)==0);length(n)ans =43(2)>> M=100+magic(5)M =117 124 101 108 115123 105 107 114 116104 106 113 120 122110 112 119 121 103111 118 125 102 109实验四1、>> x=rand(1,30000); mu=mean(x)sig=std(x)[max_num,weizhi1]=max(x) [min_num,weizhi2]=min(x)y=length(find(x>0.5));p=y/30000mu =0.5020sig =0.2893max_num =1.0000weizhi1 =731min_num =1.2354e-004weizhi2 =9617p =0.5017>>2、>> t=45+50*rand(100,5);P=fix(t);[x,l]=max(P)[y,k]=min(P)mu=mean(P)sig=std(P)s=sum(P,2)[X,m]=max(s)[Y,n]=min(s)[zcj,xsxh]=sort(s)x =94 94 94 92 94l =12 25 6 17 42y =45 45 45 45 45k =1 24 18 80 46mu =68.1300 70.4700 69.1900 67.1900 70.6800 sig =14.7290 14.5806 15.2532 13.8285 13.2702 s =326 342 338 376 375 333 394 339 317 359 338 380 302 379 369 391 378 342 366 363 315 348 383 303 335 313 334 302 296 370 319 350 329 322 365 399 326 391 318 328 335 374 305352 293 363 380 348 336 353 364 342 381 369 349 285 398 344 379 373 359 324 356 332 327 294 311 319 361 357 379 353 366 318 351 327 330 390 329 329 292 348 360 323 297 349335371323372358343363336393332337354 X =399 m =36 Y =285 n =57 zcj =285292293294296297302303 305 311 313 315 317 318 318 319 319 322 323 323 324 326 326 327 327 328 329 329 329 330 332 332 333 334 335 335 335 336 336 337 338 338 339 342 342 342 343 344 345 347348 348 349 349 350 351 352 353 353 354 356 357 358 359 359 360 361 363 363 363 364 365 366 366 369 369 370 371 372 373 374 375 376 378 379 379 379 380 380 381 383 390 391393394398399 xsxh =578246672986132824436826219397531693485916313766774033808178659862741 89 50 96 99 3 11 8 2 18 53 94 59 88 44 22 49 83 56 87 32 76 45 51 73 100 64 71 93 10 62 84 70 20 47 95 52 35 19 74 15 55 309261425417146072124854237916389775836>>3、>> A=randn(10,5)mu=mean(A)sig=std(A)m=max(A)n=min(A)p=sum(A,2)sum(p)A =-0.3316 -1.9682 -0.9379 0.0635 -0.19361.2900 0.8745 -0.3664 0.3067 -0.3796-0.3743 1.2308 -0.9529 1.2654 -0.0922 -0.8671 -0.3518 0.1797 0.9860 1.26620.7588 0.5268 0.1264 -1.2862 -0.0425-1.9617 1.0806 0.2758 1.0919 -2.9548 -0.3597 -0.3459 1.0738 1.0266 -0.44910.1221 -0.1111 0.4171 -0.9018 0.8893-1.5787 -0.1213 0.4899 0.8433 -0.5266-1.5737 1.2627 -1.3792 -1.2064 -0.3800 mu =-0.4876 0.2077 -0.1074 0.2189 -0.2863 sig =1.0449 1.0018 0.7746 1.0040 1.1116 m =1.2900 1.2627 1.0738 1.2654 1.2662 n =-1.9617 -1.9682 -1.3792 -1.2862 -2.9548 p =-3.36781.72511.07681.21300.0832-2.46820.94570.4156-0.8935-3.2766ans =-4.5466>>4、>> x=0:15*pi/180:pi/2;>> sin(x)ans =0 0.2588 0.5000 0.7071 0.8660 0.9659 1.0000>> tan(x)ans =1.0e+016 *0 0.0000 0.0000 0.0000 0.0000 0.0000 1.6331>> format long>> interp1(x,sin(x),'spline')ans =Columns 1 through 4-0.261799387799149 -0.194040720240549 -0.130899693899575 -0.076679265375884Columns 5 through 7-0.035074467269872 -0.008920597817284 0>> interp1(x,tan(x),'spline')ans =1.0e+032 *Columns 1 through 4-0.000000000000000 -0.000000000000000 -0.000000000000000 -0.000000000000000Columns 5 through 70.000000000000000 0.000000000000000 7.2536888214463725、>> N=[1 4 9 16 25 36 49 64 81 100]N =1 4 9 16 25 36 49 64 81 100>> n=sqrt(N)n =1 2 3 4 5 6 7 8 9 10>> format long>> interp1(N,n,'cubic')ans =1 4 9 16 25 36 49 64 81 100>>6(1)>> syms x>> y=(sin(x))^2+(cos(x))^2;>> dy=diff(y);>> x=[pi/6,pi/4,pi/3,pi/2];>> eval(dy)ans =(2)>> syms x>> y=sqrt(1+x^2);>> dy=diff(y);>> x=1x =1>> eval(dy)ans =0.7071 >> x=2x =2>> eval(dy) ans =0.8944 >> x=3x =3>> eval(dy) ans =0.9487 >>实验五1、>> x1=-2:0.1:2;y1=exp(x1);x2=0.1:0.1:5;y2=log(x2);plot(x1,y1,'r',x2,y2,'g');title('二维图');legend('y=exp(x)','y=logx');xlabel('X轴数据');ylabel('Y轴数据'); grid on;>>3、>> t=-pi:pi/100:pi;x=t.*cos(3*t);y=t.*sin(t).*sin(t);plot(x,y);title(date);legend(strvcat('x=tcos(3t)','y=tsin2t')); xlabel('T轴数据');ylabel('X,Y轴数据'); >>。

matlab所有实验及答案李楠资料

matlab所有实验及答案李楠资料

第二章 习题1、 矩阵Y= ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡3472123100451150425,给出元素1的全下标和单下标,求出元素100的存储位置。

取出子矩阵⎥⎦⎤⎢⎣⎡21301,并求该矩阵的维数。

解:命令为:Y=[5,2,4;0,15,1;45,100,23;21,47,3] Y(2,3) Y(10)find(Y==100) sub2ind([4 3],3,2)B=Y(2:2:4,3:-2:1) 或 B=Y([2 4],[3 1]) [m n]=size(Y)2、已知矩阵A=[1 0 -1 ;2 4 1; -2 0 5],B=[0 -1 0;2 1 3;1 1 2] 求2A+B 、A 2-3B 、A*B 、B*A 、A .*B ,A/B 、A\B 解:命令为:A=[1 0 -1 ;2 4 1; -2 0 5] B=[0 -1 0;2 1 3;1 1 2] E=2*A+B F=A^2-3*B G=A*B H=B*A I=A.*B J=A/B K=A\B3、 利用函数产生3*4阶单位矩阵和全部元素都为8的4*4阶矩阵,并计算两者的乘积。

解:命令为: A=eye(3,4) B=8*ones(4) C=A*B4、创建矩阵a=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡------7023021.5003.120498601,取出其前两列构成的矩阵b ,取出前两行构成矩阵c ,转置矩阵b 构成矩阵d ,计算a*b 、c<d ,c&d, c|d ,~c|~d 解:命令为:a=[-1,0,-6,8;-9,4,0,12.3;0,0,5.1,-2;0,-23,0,-7] b=a(:,[1 2]) c=a([1 2],:) d=b ’ e=a*b f=c<d g=c&d h=c|d i=~c|~d5、 使用函数,实现A 到B 、C 、D 、E 的转换A=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡129631185210741 B=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡321654987121110 C=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡101112789456123,D=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡369122********* E=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡126311521041 解:命令为:A=[1 4 7 10;2 5 8 11;3 6 9 12] B=rot90(A) C=rot90(A,3) D=fliplr(A) A(:,3)=[] E=A7. 矩阵A=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-410091021.5823.1204450002,用函数取出列向量⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡100845和矩阵⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡410091001.582004450002 解:命令为:A=[2 0 0 0;45 4 0 12.3;2 8 5.2 -2;0 91 100 4] B=diag(A)C=tril(A)8.建立5阶魔方矩阵,求该矩阵的行列式和逆矩阵、秩以及any 和all 运算结果。

(完整版)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 O S +⎡⎤=⎢⎥⎣⎦。

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

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

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

解: M 文件如下: 123d4e56g9实验三 选择结构程序设计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数学实验课后答案

MATLAB数学实验课后答案

数学实验MATLAB参考答案(重要部分)P20,ex1(5) 等于[exp(1),exp(2);exp(3),exp(4)](7) 3=1*3, 8=2*4(8) a为各列最小值,b为最小值所在的行号(10) 1>=4,false, 2>=3,false, 3>=2, ture, 4>=1,ture(11) 答案表明:编址第2元素满足不等式(30>=20)和编址第4元素满足不等式(40>=10)(12) 答案表明:编址第2行第1列元素满足不等式(30>=20)和编址第2行第2列元素满足不等式(40>=10)P20, ex2(1)a, b, c的值尽管都是1,但数据类型分别为数值,字符,逻辑,注意a与c相等,但他们不等于b(2)double(fun)输出的分别是字符a,b,s,(,x,)的ASCII码P20,ex3>> r=2;p=0.5;n=12;>> T=log(r)/n/log(1+0.01*p)T =11.5813P20,ex4>> x=-2:0.05:2;f=x.^4-2.^x;>> [fmin,min_index]=min(f)fmin =-1.3907 %最小值min_index =54 %最小值点编址>> x(min_index)ans =0.6500 %最小值点>> [f1,x1_index]=min(abs(f)) %求近似根--绝对值最小的点f1 =0.0328x1_index =24>> x(x1_index)ans =-0.8500>> x(x1_index)=[];f=x.^4-2.^x; %删去绝对值最小的点以求函数绝对值次小的点>> [f2,x2_index]=min(abs(f)) %求另一近似根--函数绝对值次小的点f2 =0.0630x2_index =65>> x(x2_index)ans =1.2500P20,ex5>> z=magic(10)z =92 99 1 8 15 67 74 51 58 4098 80 7 14 16 73 55 57 64 414 81 88 20 22 54 56 63 70 4785 87 19 21 3 60 62 69 71 2886 93 25 2 9 61 68 75 52 3417 24 76 83 90 42 49 26 33 6523 5 82 89 91 48 30 32 39 6679 6 13 95 97 29 31 38 45 7210 12 94 96 78 35 37 44 46 5311 18 100 77 84 36 43 50 27 59>> sum(z)ans =505 505 505 505 505 505 505 505 505 505 >> sum(diag(z))ans =505>> z(:,2)/sqrt(3)ans =57.157746.188046.765450.229553.693613.85642.88683.46416.928210.3923>> z(8,:)=z(8,:)+z(3,:)z =92 99 1 8 15 67 74 51 58 40 98 80 7 14 16 73 55 57 64 41 4 81 88 20 22 54 56 63 70 4785 87 19 21 3 60 62 69 71 2886 93 25 2 9 61 68 75 52 34 17 24 76 83 90 42 49 26 33 6523 5 82 89 91 48 30 32 39 6683 87 101 115 119 83 87 101 115 11910 12 94 96 78 35 37 44 46 5311 18 100 77 84 36 43 50 27 59P 40 ex1先在编辑器窗口写下列M函数,保存为eg2_1.m function [xbar,s]=ex2_1(x)n=length(x);xbar=sum(x)/n;s=sqrt((sum(x.^2)-n*xbar^2)/(n-1));例如>>x=[81 70 65 51 76 66 90 87 61 77];>>[xbar,s]=ex2_1(x)xbar =72.4000s =12.1124P 40 ex2s=log(1);n=0;while s<=100n=n+1;s=s+log(1+n);endm=n计算结果m=37P 40 ex3clear;F(1)=1;F(2)=1;k=2;x=0;e=1e-8; a=(1+sqrt(5))/2;while abs(x-a)>ek=k+1;F(k)=F(k-1)+F(k-2); x=F(k)/F(k-1); enda,x,k计算至k=21可满足精度P 40 ex4clear;tic;s=0;for i=1:1000000s=s+sqrt(3)/2^i;ends,toctic;s=0;i=1;while i<=1000000s=s+sqrt(3)/2^i;i=i+1;ends,toctic;s=0;i=1:1000000;s=sqrt(3)*sum(1./2.^i);s,tocP 40 ex5t=0:24;c=[15 14 14 14 14 15 16 18 20 22 23 25 28 ...31 32 31 29 27 25 24 22 20 18 17 16];plot(t,c)P 40 ex6(1)clear;fplot('x^2*sin(x^2-x-2)',[-2,2])x=-2:0.1:2;y=x.^2.*sin(x.^2-x-2);plot(x,y)y=inline('x^2*sin(x^2-x-2)');fplot(y,[-2 2]) (2)参数方法t=linspace(0,2*pi,100);x=2*cos(t);y=3*sin(t); plot(x,y)(3)x=-3:0.1:3;y=x;[x,y]=meshgrid(x,y);z=x.^2+y.^2;surf(x,y,z)(4)x=-3:0.1:3;y=-3:0.1:13;[x,y]=meshgrid(x,y);z=x.^4+3*x.^2+y.^2-2*x-2*y-2*x.^2.*y+6;surf(x,y,z)(5)t=0:0.01:2*pi;x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z)(6)theta=linspace(0,2*pi,50);fai=linspace(0,pi/2,20); [theta,fai]=meshgrid(theta,fai);x=2*sin(fai).*cos(theta);y=2*sin(fai).*sin(theta);z=2*cos(fai);surf(x,y,z)(7)x=linspace(0,pi,100);y1=sin(x);y2=sin(x).*sin(10*x);y3=-sin(x);plot(x,y1,x,y2,x,y3)page41, ex7x=-1.5:0.05:1.5;y=1.1*(x>1.1)+x.*(x<=1.1).*(x>=-1.1)-1.1*(x<-1.1);plot(x,y)page41,ex8分别使用which trapz, type trapz, dir C:\MATLAB7\toolbox\matlab\datafun\page41,ex9clear;close;x=-2:0.1:2;y=x;[x,y]=meshgrid(x,y);a=0.5457;b=0.7575;p=a*exp(-0.75*y.^2-3.75*x.^2-1.5*x).*(x+y>1);p=p+b*exp(-y.^2-6*x.^2).*(x+y>-1).*(x+y<=1);p=p+a*exp(-0.75*y.^2-3.75*x.^2+1.5*x).*(x+y<=-1);mesh(x,y,p)page41, ex10lookfor lyapunovhelp lyap>> A=[1 2 3;4 5 6;7 8 0];C=[2 -5 -22;-5 -24 -56;-22 -56 -16]; >> X=lyap(A,C)X =1.0000 -1.0000 -0.0000-1.0000 2.0000 1.0000-0.0000 1.0000 7.0000Chapter 3%Exercise 1>> a=[1,2,3];b=[2,4,3];a./b,a.\b,a/b,a\bans =0.5000 0.5000 1.0000ans =2 2 1ans =0.6552 %一元方程组x[2,4,3]=[1,2,3]的近似解ans =0 0 00 0 00.6667 1.3333 1.0000%矩阵方程[1,2,3][x11,x12,x13;x21,x22,x23;x31,x32,x33]=[2,4,3]的特解Exercise 2(1)>> A=[4 1 -1;3 2 -6;1 -5 3];b=[9;-2;1];>> rank(A), rank([A,b]) %[A,b]为增广矩阵ans =3ans =3 %可见方程组唯一解>> x=A\bx =2.38301.48942.0213Exercise 2(2)>> A=[4 -3 3;3 2 -6;1 -5 3];b=[-1;-2;1]; >> rank(A), rank([A,b])ans =3ans =3 %可见方程组唯一解>> x=A\bx =-0.4706-0.2941Exercise 2(3)>> A=[4 1;3 2;1 -5];b=[1;1;1];>> rank(A), rank([A,b])ans =2ans =3 %可见方程组无解>> x=A\bx =0.3311-0.1219 %最小二乘近似解Exercise 2(4)>> a=[2,1,-1,1;1,2,1,-1;1,1,2,1];b=[1 2 3]';%注意b的写法>> rank(a),rank([a,b])ans =3ans =3 %rank(a)==rank([a,b])<4说明有无穷多解>> a\bans =110 %一个特解Exercise 3>> a=[2,1,-1,1;1,2,1,-1;1,1,2,1];b=[1,2,3]'; >> x=null(a),x0=a\bx =-0.62550.6255-0.20850.4170x0 =11%通解kx+x0Exercise 4>> x0=[0.2 0.8]';a=[0.99 0.05;0.01 0.95]; >> x1=a*x, x2=a^2*x, x10=a^10*x >> x=x0;for i=1:1000,x=a*x;end,xx =0.83330.1667>> x0=[0.8 0.2]';>> x=x0;for i=1:1000,x=a*x;end,xx =0.83330.1667>> [v,e]=eig(a)v =0.9806 -0.70710.1961 0.7071e =1.0000 00 0.9400>> v(:,1)./xans =1.17671.1767 %成比例,说明x是最大特征值对应的特征向量Exercise 5%用到公式(3.11)(3.12)>> B=[6,2,1;2.25,1,0.2;3,0.2,1.8];x=[25 5 20]';>> C=B/diag(x)C =0.2400 0.4000 0.05000.0900 0.2000 0.01000.1200 0.0400 0.0900>> A=eye(3,3)-CA =0.7600 -0.4000 -0.0500-0.0900 0.8000 -0.0100-0.1200 -0.0400 0.9100>> D=[17 17 17]';x=A\Dx =37.569625.786224.7690%Exercise 6(1)>> a=[4 1 -1;3 2 -6;1 -5 3];det(a),inv(a),[v,d]=eig(a) ans =-94ans =0.2553 -0.0213 0.04260.1596 -0.1383 -0.22340.1809 -0.2234 -0.0532v =0.0185 -0.9009 -0.3066-0.7693 -0.1240 -0.7248-0.6386 -0.4158 0.6170d =-3.0527 0 00 3.6760 00 0 8.3766%Exercise 6(2)>> a=[1 1 -1;0 2 -1;-1 2 0];det(a),inv(a),[v,d]=eig(a) ans =1ans =2.0000 -2.0000 1.00001.0000 -1.0000 1.00002.0000 -3.0000 2.0000v =-0.5773 0.5774 + 0.0000i 0.5774 - 0.0000i -0.5773 0.5774 0.5774-0.5774 0.5773 - 0.0000i 0.5773 + 0.0000id =1.0000 0 00 1.0000 + 0.0000i 00 0 1.0000 - 0.0000i%Exercise 6(3)>> A=[5 7 6 5;7 10 8 7;6 8 10 9;5 7 9 10]A =5 76 57 10 8 76 8 10 95 7 9 10>> det(A),inv(A), [v,d]=eig(A)ans =1ans =68.0000 -41.0000 -17.0000 10.0000 -41.0000 25.0000 10.0000 -6.0000 -17.0000 10.0000 5.0000 -3.0000 10.0000 -6.0000 -3.0000 2.0000v =0.8304 0.0933 0.3963 0.3803-0.5016 -0.3017 0.6149 0.5286-0.2086 0.7603 -0.2716 0.55200.1237 -0.5676 -0.6254 0.5209d =0.0102 0 0 00 0.8431 0 00 0 3.8581 00 0 0 30.2887%Exercise 6(4)、(以n=5为例)%关键是矩阵的定义%方法一(三个for)n=5;for i=1:n, a(i,i)=5;endfor i=1:(n-1),a(i,i+1)=6;endfor i=1:(n-1),a(i+1,i)=1;enda%方法二(一个for)n=5;a=zeros(n,n);a(1,1:2)=[5 6];for i=2:(n-1),a(i,[i-1,i,i+1])=[1 5 6];enda(n,[n-1 n])=[1 5];a%方法三(不用for)n=5;a=diag(5*ones(n,1));b=diag(6*ones(n-1,1));c=diag(ones(n-1,1));a=a+[zeros(n-1,1),b;zeros(1,n)]+[zeros(1,n);c,zeros(n-1,1)] %下列计算>> det(a)ans =665>> inv(a)ans =0.3173 -0.5865 1.0286 -1.6241 1.9489-0.0977 0.4887 -0.8571 1.3534 -1.62410.0286 -0.1429 0.5429 -0.8571 1.0286 -0.0075 0.0376 -0.1429 0.4887 -0.5865 0.0015 -0.0075 0.0286 -0.0977 0.3173 >> [v,d]=eig(a)v =-0.7843 -0.7843 -0.9237 0.9860 -0.9237 0.5546 -0.5546 -0.3771 -0.0000 0.3771 -0.2614 -0.2614 0.0000 -0.1643 0.0000 0.0924 -0.0924 0.0628 -0.0000 -0.0628 -0.0218 -0.0218 0.0257 0.0274 0.0257d =0.7574 0 0 0 00 9.2426 0 0 00 0 7.4495 0 00 0 0 5.0000 00 0 0 0 2.5505%Exercise 7(1)>> a=[4 1 -1;3 2 -6;1 -5 3];[v,d]=eig(a) v =0.0185 -0.9009 -0.3066-0.7693 -0.1240 -0.7248-0.6386 -0.4158 0.6170d =-3.0527 0 00 3.6760 00 0 8.3766>> det(v)ans =-0.9255 %v行列式正常, 特征向量线性相关,可对角化>> inv(v)*a*v %验算ans =-3.0527 0.0000 -0.00000.0000 3.6760 -0.0000-0.0000 -0.0000 8.3766>> [v2,d2]=jordan(a) %也可用jordanv2 =0.0798 0.0076 0.91270.1886 -0.3141 0.1256-0.1605 -0.2607 0.4213 %特征向量不同d2 =8.3766 0 00 -3.0527 - 0.0000i 00 0 3.6760 + 0.0000i>> v2\a*v2ans =8.3766 0 0.00000.0000 -3.0527 0.00000.0000 0.0000 3.6760>> v(:,1)./v2(:,2) %对应相同特征值的特征向量成比例ans =2.44912.44912.4491%Exercise 7(2)>> a=[1 1 -1;0 2 -1;-1 2 0];[v,d]=eig(a)v =-0.5773 0.5774 + 0.0000i 0.5774 - 0.0000i-0.5773 0.5774 0.5774-0.5774 0.5773 - 0.0000i 0.5773 + 0.0000id =1.0000 0 00 1.0000 + 0.0000i 00 0 1.0000 - 0.0000i>> det(v)ans =-5.0566e-028 -5.1918e-017i %v的行列式接近0, 特征向量线性相关,不可对角化>> [v,d]=jordan(a)v =1 0 11 0 01 -1 0d =1 1 00 1 10 0 1 %jordan标准形不是对角的,所以不可对角化%Exercise 7(3)>> A=[5 7 6 5;7 10 8 7;6 8 10 9;5 7 9 10]A =5 76 57 10 8 76 8 10 95 7 9 10>> [v,d]=eig(A)v =0.8304 0.0933 0.3963 0.3803-0.5016 -0.3017 0.6149 0.5286-0.2086 0.7603 -0.2716 0.55200.1237 -0.5676 -0.6254 0.5209d =0.0102 0 0 00 0.8431 0 00 0 3.8581 00 0 0 30.2887>> inv(v)*A*vans =0.0102 0.0000 -0.0000 0.00000.0000 0.8431 -0.0000 -0.0000-0.0000 0.0000 3.8581 -0.0000-0.0000 -0.0000 0 30.2887%本题用jordan不行, 原因未知%Exercise 7(4)参考6(4)和7(1), 略%Exercise 8 只有(3)对称, 且特征值全部大于零, 所以是正定矩阵. %Exercise 9(1)>> a=[4 -3 1 3;2 -1 3 5;1 -1 -1 -1;3 -2 3 4;7 -6 -7 0]>> rank(a)ans =3>> rank(a(1:3,:))ans =2>> rank(a([1 2 4],:)) %1,2,4行为最大无关组ans =3>> b=a([1 2 4],:)';c=a([3 5],:)';>> b\c %线性表示的系数ans =0.5000 5.0000-0.5000 1.00000 -5.0000%Exercise 10>> a=[1 -2 2;-2 -2 4;2 4 -2]>> [v,d]=eig(a)v =0.3333 0.9339 -0.12930.6667 -0.3304 -0.6681-0.6667 0.1365 -0.7327d =-7.0000 0 00 2.0000 00 0 2.0000>> v'*vans =1.0000 0.0000 0.00000.0000 1.0000 00.0000 0 1.0000 %v确实是正交矩阵%Exercise 11%设经过6个电阻的电流分别为i1, ..., i6. 列方程组如下%20-2i1=a; 5-3i2=c; a-3i3=c; a-4i4=b; c-5i5=b; b-3i6=0; %i1=i3+i4;i5=i2+i3;i6=i4+i5;%计算如下>> A=[1 0 0 2 0 0 0 0 0;0 0 1 0 3 0 0 0 0;1 0 -1 0 0 -3 0 0 0;1 -1 0 0 0 0 -4 0 0;0 -1 1 0 0 0 0 -5 0;0 1 0 0 0 0 0 0 -3;0 0 0 1 0 -1 -1 0 0;0 0 0 0 -1 -1 0 1 0;0 0 0 0 0 0 -1 -1 1];>>b=[20 5 0 0 0 0 0 0 0]'; A\b ans =13.34536.44018.54203.3274-1.18071.60111.72630.42042.1467>> A=[1 2 3;4 5 6;7 8 0];>> left=sum(eig(A)), right=sum(trace(A))left =6.0000right =6>> left=prod(eig(A)), right=det(A) %原题有错, (-1)^n应删去left =27.0000right =27>> fA=(A-p(1)*eye(3,3))*(A-p(2)*eye(3,3))*(A-p(3)*eye(3,3)) fA =1.0e-012 *0.0853 0.1421 0.02840.1421 0.1421 0-0.0568 -0.1137 0.1705>> norm(fA) %f(A)范数接近0ans =2.9536e-013roots([1 1 1])%Exercise 1(2)roots([3 0 -4 0 2 -1])%Exercise 1(3)p=zeros(1,24);p([1 17 18 22])=[5 -6 8 -5];roots(p)%Exercise 1(4)p1=[2 3];p2=conv(p1, p1);p3=conv(p1, p2);p3(end)=p3(end)-4; %原p3最后一个分量-4roots(p3)%Exercise 2fun=inline('x*log(sqrt(x^2-1)+x)-sqrt(x^2-1)-0.5*x'); fzero(fun,2)】%Exercise 3fun=inline('x^4-2^x');fplot(fun,[-2 2]);grid on;fzero(fun,-1),fzero(fun,1),fminbnd(fun,0.5,1.5)%Exercise 4fun=inline('x*sin(1/x)','x');fplot(fun, [-0.1 0.1]);x=zeros(1,10);for i=1:10, x(i)=fzero(fun,(i-0.5)*0.01);end;x=[x,-x]%Exercise 5fun=inline('[9*x(1)^2+36*x(2)^2+4*x(3)^2-36;x(1)^2-2*x(2)^2-20*x(3);1 6*x(1)-x(1)^3-2*x(2)^2-16*x(3)^2]','x');[a,b,c]=fsolve(fun,[0 0 0])%Exercise 6fun=@(x)[x(1)-0.7*sin(x(1))-0.2*cos(x(2)),x(2)-0.7*cos(x(1))+0.2*sin(x(2))]; [a,b,c]=fsolve(fun,[0.5 0.5])%Exercise 7clear; close; t=0:pi/100:2*pi;x1=2+sqrt(5)*cos(t); y1=3-2*x1+sqrt(5)*sin(t);x2=3+sqrt(2)*cos(t); y2=6*sin(t);plot(x1,y1,x2,y2); grid on; %作图发现4个解的大致位置,然后分别求解y1=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[ 1.5,2])y2=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[ 1.8,-2])y3=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[ 3.5,-5])y4=fsolve('[(x(1)-2)^2+(x(2)-3+2*x(1))^2-5,2*(x(1)-3)^2+(x(2)/3)^2-4]',[ 4,-4])%Exercise 8(1)clear;fun=inline('x.^2.*sin(x.^2-x-2)');fplot(fun,[-2 2]);grid on; %作图观察x(1)=-2;x(3)=fminbnd(fun,-1,-0.5);x(5)=fminbnd(fun,1,2);fun2=inline('-x.^2.*sin(x.^2-x-2)');x(2)=fminbnd(fun2,-2,-1);x(4)=fminbnd(fun2,-0.5,0.5);x(6)=2feval(fun,x)%答案: 以上x(1)(3)(5)是局部极小,x(2)(4)(6)是局部极大,从最后一句知道x(1)全局最小,x(2)最大。

Matlab实验习题集答案

Matlab实验习题集答案

1:用以上两种形式计算36sin 5e ++π算术运算结果。

>> 5^6+sin(pi)+exp(3)ans =1.5645e+004>> x=5^6+sin(pi)+exp(3)x = 1.5645e+0042:已知矩阵⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=2211,2121B A ,对它们做简单的关系与逻辑运算C=(A<B)&(A= =B)>> A=[1 2;1 2];>> B=[1 1;2 2];>> C=(A<B)&(A==B) C =0 00 03:对数7sin 5+=a 用五位定点、十五位定点以及有理数形式表示出来。

>> a=5+sin(7);format short,aa =5.6570>> a=5+sin(7);>> format long,aa =5.6569865987187894:直接输入创建矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=98760154321A>> A=[1 2 3;4 15 60;7 8 9]A =1 2 34 15 607 8 95:输入矩阵111111111⎛⎫ ⎪ ⎪ ⎪⎝⎭。

%利用MATLAB 命令直接输入矩阵OneMatrix=ones(3,3,1)OneMatrix =1 1 1 1 1 1 1 1 16:输入矩阵00000 00000⎛⎫ ⎪⎝⎭>> OneMatrix=ones(2,5,1);ZeroMatrix=zeros(size(OneMatrix))ZeroMatrix =0 0 0 0 00 0 0 0 07:生成3阶魔方矩阵。

>> magic(3)ans =8 1 63 5 74 9 28:操作符冒号”:”的应用a)步长为1的等差数列b)步长为2的等差数列c)步长为-2的等差、递减数列>> 0:1:10ans =0 1 2 3 4 5 6 7 8 9 10 >> 0:2:10ans =0 2 4 6 8 10>> 10:(-2):0ans =10 8 6 4 2 09:已知矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=162ln973sin56231A,抽取与修改矩阵A的一些元素.a)求矩阵A的第二行第三列元素b)求矩阵A的第四个元素c)取矩阵A的A(2),A(3),A(4)d)取矩阵A的第一行e)取矩阵A的第三列f)把矩阵A的第一行第三列元素赋值给变量g)把矩阵A的第二行第一列元素修改为100>> A=[1 23 56;sin(3) 7 9;log(2) 6 1] >> A(2,3)ans =9>> A(4)ans =23>> A(2),A(3),A(4)ans =0.141120008059867ans =0.693147180559945ans =23>> A(1,:)ans =1 23 56>> A(:,3)ans =5691>> x=A(1,3)x =56>> A(2,1)=100A =1.0000 23.0000 56.0000 100.0000 7.0000 9.00000.6931 6.0000 1.000010:已知矩阵⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=851,9631BA,利用A与B生成矩阵13100690C⎛⎫= ⎪⎝⎭,() D A B=,AAAB⎛⎫= ⎪⎝⎭。

答案

答案

(必做题)MATLAB 实验一:矩阵的使用1. 略2. 在matlab 的命令窗口里完成如下计算,其中t 的值分别取-1,0,1,表达式如下:4/3)t y e π-= function myfun1t=-1:1;y=sqrt(3)/2*exp(-4*t).*sin( 4*sqrt(3*t)+pi/3 );disp(y);3.自行产生一个5行5列的数组,得到最中间的三行三行矩阵。

Function myfun3A=magic (5);B=A ([2:4],[2:4]);Disp(B);4. 用magic 产生一个5*5的矩阵,将这个矩阵的第二行与第三行互换位置function myfun4a=magic(5);b=a([1,3,2,4,5],:);disp(b);5. 求方程组的根 x 1+4x 2-3x 3=22x 1+5x 2-x 3=11x 1+6x 2+x 3=12A=[1 4 -3;2 5 -1;1 6 1];B=[2;11;12];X=inv(A)*B;disp(X);6. 已知:一个多项式的系数向量是p=[1 -6-72 -27],求这个多项式的根。

function myfun6p=[1 -6 -72 -27];y=roots(p);disp(y);7. 已经两个多项式的系数分别是:[1 2 3 4]和[1 4 9 16],请求这两个多项式的乘积,及商和余数。

function myfun7a=[1 2 3 4];b=[1 4 9 16];c=conv(a,b);[s,r]=deconv(a,b);disp(c);disp(s);disp(r);8.给定一个多项式的根是[-5 -3+4i -3-4i],求原来的多项式function myfun8r=[-5 -3+4i -3-4i];p=poly(r);disp(poly2sym(p)); %disp是用于程序中9. A=[2 3 4;1 5 7;6 2 5]用什么函数,保证第一列排序的时候,其他列跟着变化。

MATLAB程序设计及应用(第二版)课后实验答案(最新整理)

MATLAB程序设计及应用(第二版)课后实验答案(最新整理)

阵和对角阵,试通过数值计算验证。

22E R RS A OS +⎡⎤=⎢⎥⎣⎦解: M 文件如下;由ans,所以22E R RS A O S +⎡⎤=⎢⎥⎣⎦2. 产生5阶希尔伯特矩阵H 和5阶帕斯卡矩阵P ,且求其行列式的值Hh 和Hp 以及它们的条件数Th 和Tp ,判断哪个矩阵性能更好。

为什么?解:M 文件如下:因为它们的条件数Th>>Tp,所以pascal 矩阵性能更好。

3. 建立一个5×5矩阵,求它的行列式值、迹、秩和范数。

解: M 文件如下:4. 已知2961820512885A -⎡⎤⎢⎥=⎢⎥⎢⎥-⎣⎦求A 的特征值及特征向量,并分析其数学意义。

解:M 文件如图:数学意义:V的3个列向量是A的特征向量,D的主对角线上3个是A的特征值,特别的,的3个列向量分别是D的3个特征值的特征向量。

5. 下面是一个线性方程组:111⎡⎤输出结果:由结果,X和X2的值一样,这表示b的微小变化对方程解也影响较小,而A的条件数算得较小,所以数值稳定性较好,A是较好的矩阵。

6. 建立A矩阵,试比较sqrtm(A)和sqrt(A),分析它们的区别。

解:M文件如下:分析结果知:sqrtm(A)是类似A的数值平方根(这可由b1*b1=A的结果看出),而sqrt(A)则是对A中的每个元素开根号,两则区别就在于此。

实验三 选择结构程序设计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 值。

解:M文件如下:2. 输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。

其中90分~100分为A ,80分~89分为B ,79分~79分为C ,60分~69分为D ,60分以下为E 。

要求:(1) 分别用if 语句和switch 语句实现。

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)课后实验答案[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)。

1、求以下变量的值,并在MATLAB中验证。

( 1 ) a = 1 : 2 : 5a =1 3 5( 2 ) b = [ a' , a' , a' ;a ]b =1 1 13 3 35 5 51 3 5( 3 ) c = a + b ( 2 , : )c =4 6 82、下列运算是否合法,为什么?如合法,结果是多少?>> result2=a*bError using *Inner matrix dimensions must agree.>> result3=a+bresult3 =3 6 25 8 11>> result4=b*dresult4 =31 22 2240 49 13>> result5=[b;c']*dresult5 =31 22 2240 49 13-5 -8 7>> result6=a.*bresult6 =2 8 -34 15 30>> result7=a./bresult7 =0.5000 0.5000 -3.00004.0000 1.6667 1.2000>> result8=a.cAttempt to reference field of non-structure array.>> result9=a.\bresult9 =2.0000 2.0000 -0.33330.2500 0.6000 0.8333>> result10=a.^2result10 =1 4 916 25 36>> result11=2.^aresult11 =2 4 816 32 643、用MATLAB求解下面的的方程组。

(1)⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⨯⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡----17413231511222315921274321xxxx>> A=[7 2 1 -2;9 15 3 -2;-2 -2 11 5;1 3 2 13] >> B=[4 7 -1 0]>> B=B'>> x=inv(A)*B(2)⎪⎪⎩⎪⎪⎨⎧=-++=--=-++=++56533332821wzyxwyxwzyxzyx>> A1=[1 1 1 0;1 2 1 -1;2 -1 0 -3;3 3 5 -6]>> B2=[1;8;3;5]>> x2=inv(A1)*B24、已知⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡----=1323151122231592127A(1)求矩阵A 的秩(rank)(2)求矩阵A 的行列式(determinant) (3)求矩阵A 的逆(inverse)(4)求矩阵A 的特征值及特征向量(eigenvalue and eigenvector) >> A3=[7 2 1 -2;9 15 3 -2;-2 -2 11 5;1 3 2 13] >> r=rank(A3) >> b=inv(A3) >> a=det(A3) >> [V,D]=eig(A3) 5、109910101022222++++==---=∑n n y ,求y=?(运行format long g 命令后,查看y 的值) m1=0;for m=-10:10 m1=m1+2^m; end m1 m1 =2047.99902343756、求分段函数的值。

⎪⎩⎪⎨⎧≥--<≤+-<-+=51506506222x x x x x x x x x y用if 语句实现,算出下列表中x 对应的y值。

x=input('enter x='); if x<0y=x^2+x -6; elseif x>=0&&x<5 y=x^2-5*x+6; elsey=x^2-x -1; end y7、分别用if 和switch 语句实现,将百分制成绩转换为成绩等级A 、B 、C 、D 、E 。

其中90~100分为A ,80~89分为B ,70~79分为C ,60~69分为D ,60分以下为E 。

对超出百分制范围的成绩,给出错误提示信息。

if 结构程序:x=input('please enter score='); if x>=90&&x<=100 disp('A')elseif x<90&&x>=80 disp('B')elseif x<80&&x>=70 disp('C') elseif x<70&&x>=60 disp('D')elseif x<60&&x>=0 disp('E') elsedisp('error') endswitch 结构程序:x=input('please enter score='); switch fix(x/10) case{10,9} if x>100disp('error') elsedisp('A') end case{8} disp('B') case{7} disp('C') case{6} disp('D')case{0,1,2,3,4,5} disp('E') otherwise disp('error') end8、思考题设计程序,完成成两位数的加、减、乘、除四则运算,即产生两个两位随机整数,再输入一个运算符号,做相应的运算,并显示相应的结果。

x=input('请输入运算符')a=num2str(floor(rand(1)*90+10));ab=num2str(floor(rand(1)*90+10));bif x=='+'y=a+b;elseif x=='-'y=a-b;elseif x=='*'y=a*b;elseif x=='/'y=a/b;elsedisp('error')endy9、启动MATLAB后,点击File|New|M-File,启动MATLAB的程序编辑及调试器(Editor/Debugger),编辑以下程序,点击File|Save保存程序,注意文件名最好用英文字符。

点击Debug|Run运行程序,在命令窗口查看运行结果,程序如有错误则改正。

注:数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。

重复此过程,最终得到的结果为1。

n=input('请输入n值:');a=n;while n>1if rem(n,2)==0n=n/2;elsen=3*n+1;enda=[a,n];enda 10、根据2222213121116nx++++=,当n分别取100、1000、10000时,求x的值分别是多少?a=input('请输入数值')n=0;for m=1:100n=n+1/(m*m);endn=6*n;x=sqrt(n);x11、编程求满足∑=>mkk1100002的最小m值。

sum=0;m=2;a=1;while afor i=1:msum=sum+2^i;if sum>10000a=0;endendm=m+1;endm12、思考题已知y和t的函数关系:!20/...!3/!2/1)(2032ttttty+++++=求下面表格中与t对应的y值t=input('请输入t值:')sum=0;for i=1:20b=factorial(i);sum=sum+t^i/b; endsum=sum+1; sum13、编写一个函数,计算下面函数的值,给出标量x 的值,调用该函数后,返回y 的值。

function [y]=myfun1(x)选择一些数据测试你编写的函数。

function [y]=myfun1(x) if x<=0 y=sin(x);elseif x>0&x<=3 y=x;elseif x>3 y=-x+6; end14、编写一个函数求向量x 中元素的平均值、最大值、最小值、均方根值。

function[m_x,max_x,min_x,rms_x]=myfun2(x)方均根值(Root Mean Square)的计算公式为:∑==Ni i x Nrms 121用下面数据测试你写的函数:(1)x=sin(0:0.01:6*pi) (2)x=rand(1,200),得到的x 为200个(0,1)之间均匀分布的随机数。

function[m_x,max_x,min_x,rms_x]=myfun2(x) %求平均值sum_x=sum(x); %向量元素求和[m,n]=size(x); %最好用n=length(x);m_x=sum_x/n;%求最大值 采用逐个比较方式 if x(1)>x(2) max_x=x(1); elsemax_x=x(2); endfor k=3:nif max_x<x(k) max_x=x(k); elsemax_x=max_x; %可省略 end end%求最小值 if x(1)<x(2) min_x=x(1); elsemin_x=x(2); endfor k=3:nif min_x>x(k) min_x=x(k); elsemin_x=min_x; %可省略 end end%求均方根值 sum_x2=0; for k=1:nsum_x2=sum_x2+x(k).^2; rms_x=sqrt(sum_x2/n); end m_x; max_x; min_x;rms_x; %按照函数值行参顺序输出结果15、编写一个函数,给出一个向量],,[21n x x x x =,生成如下范德蒙矩阵。

function [v]=myvander(x)⎪⎩⎪⎨⎧>+-≤<≤=3,630,0,sin )(x x x x x x x y⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡---112112222121111n n n n n n x x x x x x x x x例如:>>v=myvander([2 3 4 5]) 得v=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡1256427825169454321111function [v]=myvander(x) v1=vander(x); %生成范德蒙矩阵 v2=v1';v=flipud(v2); %实现矩阵上下翻转16、思考题编写程序,用如下迭代公式求a,a 的值分别为:3,17,113。

相关文档
最新文档