南理工 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.已知3阶椭圆IIR数字低通滤波器的性能指标为:通带截止频率0.4π,通带波纹为0.6dB,最小阻带衰减为32dB。

设计一个6阶全通滤波器对其通带的群延时进行均衡。

绘制低通滤波器和级联滤波器的群延时。

%Q1_solution%ellip(N,Ap,Ast,Wp)%N--->The order of the filter%Ap-->ripple in the passband%Ast->a stopband Rs dB down from the peak value in the passband%Wp-->the passband width[be,ae]=ellip(3,0.6,32,0.4);hellip=dfilt.df2(be,ae);f=0:0.001:0.4;g=grpdelay(hellip,f,2);g1=max(g)-g;[b,a,tau]=iirgrpdelay(6,f,[0 0.4],g1);hallpass=dfilt.df2(b,a);hoverall=cascade(hallpass,hellip);hFVT=fvtool([hellip,hoverall]);set(hFVT,'Filter',[hellip,hoverall]);legend(hFVT,'Lowpass Elliptic filter','Compensated filter');clear;[num1,den1]=ellip(3,0.6,32,0.4);[GdH,w]=grpdelay(num1,den1,512);plot(w/pi,GdH); gridxlabel('\omega/\pi'); ylabel('Group delay, samples');F=0:0.001:0.4;g=grpdelay(num1,den1,F,2); % Equalize the passbandGd=max(g)-g;% Design the allpass delay equalizer[num2,den2]=iirgrpdelay(6,F,[0,0.4],Gd);[GdA,w] = grpdelay(num2,den2,512);hold on;plot(w/pi,GdH+GdA,'r');legend('Original Filter','Compensated filter');2.设计巴特沃兹模拟低通滤波器,其滤波器的阶数和3-dB 截止频率由键盘输入,程序能根据输入的参数,绘制滤波器的增益响应。

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)z1=2*sin(85*pi/180)/(1+exp(2))%(2)x=[2,1+2i;-0.45,5];z2=0.5*log(x+sqrt(1+x.^2))%(3)a=-3.0:0.1:3.0;z3=(exp(0.3*a)-exp(-0.3*a))/2.*sin(a+0.3)+log((0.3+a)/2)%(4)t=0:0.5:2.5;z4=t.^2.*(t>=0&t<1)+(t.^2-1).*(t>=1&t<2)+(t.^2-2*t+1).*(t>=2&t<3)%第二题A=[12 34 -4;34 7 87;3 65 7];B=[1 3 -1;2 0 3;3 -2 7];A+6*BA-B+eye(size(A))A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2]%第三题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] B=[3 0 16;17 -6 9;0 23 -4;9 7 0;4 13 11]C=A*BF=size(C)D=C(F(1)-2:F(1),F(2)-1:F(2))whos%第四题%(1):A=100:999;B=rem(A,21);C=length(find(B==0))%(2):A='lsdhKSDLKklsdkl';k=find(A>='A'&A<='Z');A(k)=[]%实验二MATLAB矩阵分析与处理%第一题E=eye(3);R=rand(3,2);O=zeros(2,3);S=diag([2,3]);A=[E,R;O,S];A^2B=[E,(R+R*S);O,S^2]%第二题H=hilb(5)P=pascal(5)Hh=det(H)Hp=det(P)Th=cond(H)Tp=cond(P)%第三题:A=fix(10*rand(5))H=det(A)Trace=trace(A)Rank=rank(A)Norm=norm(A)%第四题:A=[-29,6,18;20,5,12;-8,8,5][V,D]=eig(A)%数学意义略%第五题方法一:%(1):A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];b=[0.95,0.67,0.52]';x=inv(A)*b%(2):B=[0.95,0.67,0.53]';x=inv(A)*B%(3):cond(A)%第五题方法二:A=hilb(4)A(:,1)=[]A(4,:)=[]B=[0.95,0.67,0.52]';X=inv(A)*BB1=[0.95,0.67,0.53]';X1=inv(A)*B1N=cond(B)N1=cond(B1)Na=cond(A) %矩阵A为病态矩阵%第六题A=[1,4,9;16,25,36;49,64,81]B=sqrtm(A)C=sqrt(A) %sqrtm函数是以矩阵为单位进行计算,sqrt函数是以矩阵中的元素进行计算%实验三选择程序结构设计%第一题程序一x=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0];y=[]; %建立存放所有y值的矩阵for x0=xif x0<0&x0~=-3y=[y,x0*x0+x0-6];elseif x0>=0&x0<5&x0~=2&x0~=3y=[y,x0*x0-5*x0+6];elsey=[y,x0*x0-x0-1];endendx %输出所有xy %输出所有y%第一题程序二x=[-5,-3,1,2,2.5,3,5];y=[];for a=1:7if x(a)<0&x(a)~=-3y=[y,(x(a))^2+x(a)-6];elseif x(a)>=0&x(a)<5&x(a)~=2&x(a)~=3y=[y,(x(a))^2-5*x(a)+6];elsey=[y,x(a)*x(a)-x(a)-1];endend%第二题程序一:x=input('请输入一个百分制成绩:');if x>100|x<0disp('您输入的成绩不是百分制成绩,请重新输入。

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

(完整版)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 az 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 分别为单位矩阵、随机矩阵、零矩阵和对⾓阵,试通过数值计算验证2 2E 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 值。

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

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

m a t l a b实验内容答案(总16页) -本页仅作为预览文档封面,使用时请删除本页-实验报告说明:matlab 课程实验需撰写8个实验报告,每个实验报告内容写每次实验内容中标号呈黑体大号字显示的题目。

第一次实验内容:实验一 MATLAB 运算基础一、实验目的1.熟悉启动和退出MATLAB 的方法。

2.熟悉MATLAB 命令窗口的组成。

3.掌握建立矩阵的方法。

4.掌握MATLAB 各种表达式的书写规则以及常用函数的使用。

二、实验内容1.先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。

(1)22sin8511z e ︒=+ (2)12ln(2z x =,其中2120.455i +⎡⎤=⎢⎥-⎣⎦(3)0.30.33sin(0.3), 3.0, 2.9, 2.8,,2.8,2.9,3.02a ae e z a a --=+=--- 提示:利用冒号表达式生成a 向量,求各点的函数值时用点乘运算。

(4)2220141122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪--≤<⎩,其中t =0::提示:用逻辑表达式求分段函数值。

2.已知12344347873657A -⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦,131203327B -⎡⎤⎢⎥=⎢⎥⎢⎥-⎣⎦求下列表达式的值:(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 和B12345678910111213141516171819202122232425A ⎡⎤⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎣⎦, 30161769023497041311B ⎡⎤⎢⎥-⎢⎥⎢⎥=-⎢⎥⎢⎥⎢⎥⎣⎦(1) 求它们的乘积C 。

(2) 将矩阵C 的右下角3×2子矩阵赋给D(3) 查看MATLAB 工作空间使用情况。

MATLAB第1-8章答案

MATLAB第1-8章答案

第1章一、思考题4. (1) B=A(2:5,1:2:5)(2)A(7)=[](3) A=A+30(4)size(A)(5) t(find(t==0))=eps(6)t=reshape(x,3,4)(7)abs('matlab')(8)char(93)5. A=[97,67,34,10;-78,75,65,5;32,5,-23,-59;0,-12,54,7](1) B=A(1:3,:)C=A(:,1:2)D=A(2:4,3:4)E=B*C(2)A(find(A>=50 & A<=100))二、实验题1.x=-74/180*pi;y=-27/180*pi;sin(x*x+y*y)/sqrt(tan(abs(x+y)))+pi2.a=-3.0:0.1:3.0;exp(-0.3*a).*sin(a+0.3)3.x=[2,4;-0.45,5];log(x+sqrt(1+x.*x))/24. A=[3,54,2;34,-45,7;87,90,15];B=[1,-2,67;2,8,74;9,3,0]; (1)A*Bans =129 432 41977 -407 -1052402 591 12489A.*Bans =3 -108 13468 -360 518783 270 0(2) A^3ans =-28917 240246 -4368137883 -259101 27669171333 252504 38673A.^3ans =27 157464 839304 -91125 343658503 729000 3375(3)A/Bans =-5.8845 5.3549 -0.20286.3554 -5.6596 4.3293-6.6325 6.2078 9.0241B/Aans =30.2855 19.2643 -8.561433.4394 21.1547 -9.3974-0.7443 -0.3938 0.2830(4)[A,B]ans =3 54 2 1 -2 6734 -45 7 2 8 7487 90 15 9 3 0[A([1,3],:);B^2]ans =3 54 287 90 15600 183 -81684 282 72615 6 8255.a=1+2i;b=3+4i;c=exp(pi*i/6)c =0.8660 + 0.5000ic+a*b/(a+b)ans =1.6353 + 1.8462i第2章一、思考题3.s=0;for n=0:63s=s+2^n;enddisp(s)n=0:63;s=sum(2.^n)二、实验题1.x=input('输入一个四位整数:');y=[fix(x/1000),mod(fix(x/100),10),mod(fix(x/10),10),mod(x,10)] z=mod((y+7),10)x=z(3)*1000+z(4)*100+z(1)*10+z(2)2.gh=input('输入工号');h=input('输入工时');dj=84;if h>120gz=dj*120+1.15*dj*(h-120);elseif h<60gz=dj*h-700;elsegz=dj*h;endformat bank;display([gh,gz])3.循环结构n=input('input n:');s=0;for k=1:ns=s+1/k^2;enddisplay(sqrt(s*6))向量运算n=input('input n:');k=1:n;display(sqrt(sum(1./k.^2)*6))4.y=0;k=0;while y<3k=k+1;y=y+1/(2*k-1);enddisplay([k-1,y-1/(2*k-1)])5.x0=0;x=1;k=0;a=input('a=');b=input('b=');while abs(x-x0)>=1e-5 && k<500x0=x;x=a/(b+x0);k=k+1;enddisplay([k,x]);display([(-b+sqrt(b^2+4*a))/2,(-b-sqrt(b^2+4*a))/2]);6.y=fun(40)/(fun(30)+fun(20))(1)函数文件fun.mfunction f=fun(n)f=n+log(n^2+5);(2)函数文件fun.mfunction f=fun(n)a=1:n;f=sum(a.*(a+1));第3章一、思考题4.t=0:0.01:1.5;y=sqrt(3)/2*exp(-4*t).*sin(4*sqrt(3)*t+pi/3);5.x=-10:0.01:10;y=linspace(-6,6,size(x,2))z=x.^3+3*x.*y.^2;plot3(x,y,z)6.x=100:100:400;y=100:100:400;z=[636,697,624,478;698,712,630,478;680,674,598,412;662,626,552,334]; [X,Y]=meshgrid(x,y);mesh(X,Y,z)二、实验题1.(1)x=-10:0.01:10;plot(x,x-x.^3/3/2)(2)plot(x,exp(-x.*x/2)/2/pi)(3)x=-8:0.01:8;plot(x,sqrt((64-x.*x)/2))(4)t=0:pi/100:6*pi;plot(t.*sin(t),t.*cos(t))2. (1)x1=linspace(0,1,100);y1=2*x1-0.5;t=linspace(0,pi,100);x=sin(3*t).*cos(t);y=sin(3*t).*sin(t);plot(x1,y1,'r-',x,y,'b:');text(0.4,1,'y=2x-0.5');text(-0.4,0.5,'x=sin(3t)cos(t)');text(-0.4,0.3,'y=sin(3t)sin(t)');(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,21);x=1:1:100; y=sin(1./x);plot(x,y)subplot(1,2,2);fplot('sin(1/x)',[1,100])4.subplot(2,2,1);bar(t,y);subplot(2,2,2);stairs(t,y);subplot(2,2,3);stem(t,y)subplot(2,2,4);semilogy(t,y);5.theta=linspace(-pi,pi,100);ro=5.*cos(theta)+4;polar(theta,ro);fi=linspace(0,2*pi,100);a=1r=a.*(1+cos(fi));polar(fi,r);6.t=0:pi/20:2*pi;x=exp(-t./20).*cos(t);y=exp(-t./20).*sin(t);z=t; plot3(x,y,z);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;x=3*u.*sin(v);y=2*u.*cos(v);z=4*u.^2;surf(x,y,z);shading interp;light('position',[1,0,1]);10.t=0:pi/100:2*pi;y=sin(t);comet(t,y)第4章一、思考题5.(1)A=eye(3);(2)C=100+(200-100)*rand(5,6);(3)D=1+sqrt(0.2)*randn(1,500);(4)E=ones(size(A));(5)A=A+30*eye(size(A));(6)B=diag(diag(A))二、实验题1.P=pascal(5);H=hilb(5);Dp=det(P);Dh=det(H);Kp=cond(P);Kh=cond(H);P矩阵的性能更好,因为Kp较小2.A=[1,-1,2,3;0,9,3,3;7,-5,0,2;23,6,8,3]B=[3,pi/2,45;32,-76,sqrt(37);5,72,4.5e-4;exp(2),0,97]A1=diag(A);B1=diag(B);A2=triu(A);B2=triu(B);A3=tril(A);B3=tril(B);rA=rank(A);rB=rank(B);nA=norm(A);nb=norm(B);cA=cond(A);cB=cond(B);3.A=[31,1,0;-4,-1,0;4,-8,-2];[V,D]=eig(A);4.A=diag([-1,-1,-1,-1],-1)+diag([-1,-1,-1,-1],1)+diag([2,2,2,2,2]) b=[1,0,0,0,0]';x1=inv(A)*b;x2=A\b;[L,U]=lu(A);x3=U\(L\b);[Q,R]=qr(a);[Q,R]=qr(A);x4=R\(Q\b)R=chol(A);x5=R\(R'\b)5.B=sparse(A);x1=inv(B)*b;x2=B\b;[L,U]=lu(B);x3=U\(L\b);第5章一、思考题3.A=randn(10,5);mean(A)std(A)max(max(A))min(min(A))sum(A,2)sum(sum(A))sort(A,1)sort(A,2,'descend')二、实验题1.A=rand(1,30000);mean(A)std(A)max(A)min(A)size(find(A>0.5))/size(A)2.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')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.')4.N=64; % 采样点数T=5; % 采样时间终点t=linspace(0,T,N); % 给出N个采样时间ti(I=1:N) x=3*exp(-t); % 求各采样点样本值xdt=t(2)-t(1); % 采样周期f=1/dt; % 采样频率(Hz)X=fft(x); % 计算x的快速傅立叶变换XF=X(1:N/2+1); % F(k)=X(k)(k=1:N/2+1) f=f*(0:N/2)/N; % 使频率轴f从零开始plot(f,abs(F),'-*') % 绘制振幅-频率图xlabel('Frequency');ylabel('|F(k)|')5.(1)p1=[1 2 0 0 7];p2=[1 -2];p3=[1 0 0 5 1];p12=conv(p1,p2);p=p12+[zeros(1,size(p12,2)-size(p3,2)),p3];roots(p)(2)A=[-1,4,3;2,1,5;0,5,6];Px=polyval(p,A)Pxm=polyvalm(p,A)6.(1)z=fzero('3*x-sin(x)+1',0)(2)建立函数文件myfun.mfunction F=myfun(X)x=X(1);y=X(2);F(1)=x*x+y*y-9;F(2)=x+y-1;在命令窗口中输入以下命令:x=fsolve(@myfun,[3,0]',optimset('Display','off')) 第6章一、思考题2.fx=inline('1./(1+x.^2)');[I,n]=quad(fx,-100000,100000,1e-3);[I,n]=quadl(fx,-100000,100000,1e-3);x=-100000:0.01:100000;y=1./(1+x.*x);trapz(x,y);3.(1)fx=inline('-2*y+2*x*x+2*x');[t,y]=ode23(fx,[0,0.5],1)(2)fx=inline('y-exp(x)*cos(x)');[t,y]=ode23(fx,[0,3],1)二、实验题1.for x=1:3fx=[x,x^2,x^3;1,2*x,3*x;0,2,6*x];diff(fx)end2.(1)x=0:0.01:1;y=x.^10+10.^x+1./log10(x);dy=diff(y)/0.01;(2)x=0:0.01:1;y=log(1+x);dy=diff(y,2)/0.01;plot(x(1:99),dy)3.(1)fx=inline('x.^2.*sqrt(2*x.*x+3)');quad(fx,1,5)(2)fx=inline('x./sin(x).^2');quad(fx,pi/4,pi/3)(3)fx=inline('abs(cos(x+y))');dblquad(fx,0,pi,0,pi)(4)syms x y ;fx=x*y;int(int(fx,y^2,y+2),-1,2)x 的积分区间为【0,2】时fx=inline('x.*y');dblquad(fx,0,2,-1,2)4.x=0.3:0.2:1.5;y=[0.3895,0.6598,0.9147,1.1611,1.3971,1.6212,1.8325]; trapz(x,y)5.(1)yp=inline('-(1.2+sin(10*x))*y');[t,y]=ode23(yp,[0,5],1);(2)令''3,,21y x y x y x ='==,则可写出原方程的状态方程形式:123233221sin 31)1(2cos 5cos x tx x t t t x x x x x +--++='='='⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡+-+-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡'''t x x x t t t x x x cos 00)1(2cos 51sin 311000103212321 建立函数文件ztfun.mfunction y=ztfun(t,x)b=[0;0;cos(t)];y=[0,1,0;0,0,1;-1/(3+sin(t)),-1,5*cos(2*t)/(t+1)^2]*x+b; 解微分方程组[t,y]=ode23(@ztfun,[0,5],[1;0;2]);6.建立函数文件ztfun.mfunction yy=ztfun(t,y)yy=[y(2)*y(3);-y(1)*y(3);-0.51*y(1)*y(2)];解微分方程组[t,y]=ode23(@ztfun,[0,5],[0;1;1])第7章一、思考题3.(1)数值积分fx=inline('exp(x).*(1+exp(x)).^2');quad(fx,0,log(2))符号积分f=sym('exp(x)*(1+exp(x))^2');v=int(f,0,log(2));eval(v)(2)略二、实验题1.A=sym('[1,2,3;x,y,z;3,2,1]')rank(A)inv(A)det(A)2.(1) y=sym('sqrt(x+sqrt(x+sqrt(x)))');y1=diff(y)y2=diff(y,'x',2)(2) syms x y;fxy=sin(x^2*y)*exp(-x^2-y);diff(diff(fxy,x),y)3.(1) syms xint(1/(1+x^4))(2) syms x tint((-2*x*x+1)/(2*x*x-3*x+1)^2,x,cos(t),exp(2*t)) 4.syms n xsymsum(1/(2*n+1)/(2*x+1)^(2*n+1),n,0,inf)symsum(1/(2*n+1)/(2*x+1)^(2*n+1),n,0,5)5.(1) syms xtaylor((exp(x)+exp(-x))/2,5,0)(2) syms a xtaylor(exp(-5*x)*sin(3*x+pi/3),5,a)6.(1)x=solve(sym('x^3+a*x+1=0'))(2) [x y]=solve(sym('sqrt(x^2+y^2)-100=0,3*x+5*y-8=0'))7. 方程转化为: π21'11't y y y y -=+=⎩⎨⎧符号解[y1,y11]=dsolve('Dy=y1,Dy1+y=1-t^2/pi','y(-2)=5,y1(-2)=5','t') 数值解编写函数文件ztfun.mfunction yy=ztfun(t,y)yy=[y(2);1-t^2/pi-y(1)];在命令窗口输入以下命令[t,y]=ode45(@ztfun,[-2,7],[-5;5]);t=linspace(-2,7,49)y2=y8.[x,y]=dsolve('Dx=3*x+4*y,Dy=-4*x+3*y','x(0)=0,y(0)=1')。

matlab课后习题答案1到6章

matlab课后习题答案1到6章

欢迎共阅习题二1.如何理解“矩阵是MATLAB 最基本的数据对象”? 答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。

(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’); 或E 。

答:B=A(1:3,:); C=A(:,1:2); D=A(2:4,3:4);E=B*C;(2) 分别求E<D 、E&D 、E|D 、~E|~D 和find(A>=10&A<25)。

答:E<D=010001⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,E&D=110111⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,11⎡⎤⎢⎥答:student(1).id='0001';student(1).name='Tom'; student(1).major='computer';student(1).grade=[89,78,67,90,86,85]; 8.建立单元矩阵B 并回答有关问题。

B{1,1}=1;B{1,2}='Brenden';B{2,1}=reshape(1:9,3,3); B{2,2}={12,34,2;54,21,3;4 ,23,67};(1)size(B)和ndims(B)的值分别是多少?答:size(B) 的值为2, 2。

ndims(B) 的值为2。

(2)B(2)和B(4)的值分别是(2)建立5×6随机矩阵A,其元素为[100,200]范围内的随机整数。

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答案

南理工matlab答案一、问答题(15分)1. 在安装MATLAB 软件程序时,哪些组件(模块)是必须选择的?否则,不能建立MATLAB 工作环境。

答:Toolboxes MA TLAB Complier2. 下面的5个变量名,哪些合法哪些非法,为什么?①Do_you_know_the_way_to_heaven_Jesus ②1dog ③ dog1 ④_help ⑤What’s_up 答:①非法,因为每个变量名最长只能包含19个字符;②非法,因为变量名的首字符必须是字母;③ 合法;④非法,因为变量名的首字符必须是字母;⑤非法,因为变量名中不能有标点符号。

3.分别写出下面数组的大小和内容. 注意后面的数组可能根据前面数组的定义.①. a=1:2:5;② . b=[a', a', a'];③ . c=b(1:2:3, 1:2:3);④ . d=a+b(2,:);⑤ . w=[zeros(1,3), ones(3,1)', 3:5'];⑥ . b([1, 3],2)=b([3, 1],2);答:① a =【 1 3 5】② b =【 1 1 13 3 35 5 5】③ c =【 1 15 5】④ d =【 4 6 8】⑤ w =【 0 0 0 1 1 1 3 4 5】⑥ b =【 1 5 13 3 35 1 5】4. 根据下列矩阵回答问题① A 的大小是多少?② A(4,1)的值是多少?③ A(:,1:2)的大小和值分别是多少?④ A([1 3],end)的大小和值分别是多少?1.10.02.13.5 6.00.00.6 6.6 2.84.52.1 1.20.3 1.4 1.31.45.19.0 1.30.8A --=??-??--??答:①size(A)=【4 5】②A(4,1)= -1.4③size(A(:,1:2))= 【4 2】A(:,1:2)=【 1.1000 00 0.60002.1000 1.2000-1.4000 5.1000】④size(A([1 3],end)=【2 1】A([1 3],end)=【 6.00001.3000】5. 变量a的赋值为64,分别用4个类型的数组表示为:①(1×1)的实数数组a;②(1×1)的字符串数组a;③ (1×1)的单元(cell)数组a;④ (1×1)的结构(structure)数组a.a。

matlab作业题答案

matlab作业题答案

MATLAB作业题答案第一章MATLAB概述1.选择题(1)在MATLAB中( C )用于括住字符串。

A、,B、;C、‘’D、“”(2)在MATLAB的命令窗口中( D )可以中断MATLAB命令运行。

A、endB、escC、backspaceD、ctrl+c(3)在MA TLAB的命令窗口中执行( B )命令,使数值 5.3显示为5.3000000000000000e+000。

A、format longB、format long eC、format shortD、format short e(4)在MA TLAB的命令窗口中执行(B )命令,将命令窗口的现实内容清空。

A、clearB、clcC、echo offD、cd2.在命令窗口中输入以下命令,写出在命令窗口中的运行结果。

a=[2+5i 5 0.2 2*3]答:a =0i 5.0000 0.2000 6.00003.使用MATLAB的‘preferences’窗口设置数据格式为有理数表示答:rational4.在命令窗口使用标点符号“%”和“;”的含义?答:%表示注释;;表示不显示运行结果。

5.用“format”命令设置数据输出格式为有理数表示,15位长格式和5位科学计数法。

答:rational long short11.在命令窗口中输入以下命令,并查看显示的图形。

a=[1 2 3 4];>> b=[5 6 7 8];>> c=a+b*i;>> plot(c)第二章 MATLAB 基本运算1. 选择题(1) 下列变量名中( A )是合法的。

A 、 char_1,i,jB 、x*y,a.1C 、x\y,a1234D 、end ,1bcx(2)下列( C )是合法常量。

A 、3*e10B 、1e500C 、-1.85e-56D 、10-2(3)x=uint8(2.3e10),则x 所占的字节是( A )个。

A 、1B 、 2C 、4D 、8(4)已知x=0:10;,则x 有( B )个元素。

Matlab考试题库+标准答案

Matlab考试题库+标准答案

Matlab考试题库+标准答案Matlab考试题库+答案————————————————————————————————作者:————————————————————————————————⽇期:3 填空题 1、标点符号; %—⽤来表⽰该⾏为注释⾏。

可以使命令⾏不显⽰运算结果,2、x 为0 ~4pi ,步长为0.1pi 的向量,使⽤命令 x=0:0.1*pi:4*pi 创建。

3、输⼊矩阵A= ,使⽤全下标⽅式⽤A(2,2)取出元素“-5 ”,使⽤单下标⽅式⽤A(5)取出元素“-5 ”。

4、符号表达式sin(2*a+t)+m 中独⽴的符号变量为 t 。

5、M 脚本⽂件和M 函数⽂件的主要区别是M 脚本⽂件没有函数定义和M 函数⽂件有函数定义_______。

6. 设x 是⼀维数组,x 的倒数第3个元素表⽰为x(_end-2_)设y 为⼆维数组,要删除y 的第34⾏和48列,可使⽤命令y(34,:)=[] ;y(:,48)=[];7. 将变量x 以Ascii ⽂本格式存储到⽂件fname.txt ,应使⽤命令 save _x ;8. 在while 表达式, 语句体, End 循环语句中,表达式的值⾮零时表⽰循环条件为真,语句体将被执⾏,否则跳出该循环语句;9.要从键盘读⼊⼀个字符串并赋值给变量x ,且给出提⽰“Who is she?”,应使⽤命令x=input(‘Who is she?’,’s’) ;10.设A=和B= 和C=均为m*n 矩阵,且存在于WorkSpace 中,要产⽣矩阵D= ,可⽤命令D=(A-C)/B.^C ,计算可⽤命令det(inv(A’*B)11. 在MATLAB 命令窗⼝中的“>>”标志为MATLAB 的命令⾏提⽰符,“│”标志为输⼊提⽰符。

12.已知A=[1 2 3;4 5 0;7 8 9];B=[1 0 3;1 5 0;0 1 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作业南京理工大学

MATLAB作业南京理工大学MATLAB软件语言及程序设计课程论文任课教师:张登峰一、问答题1. MATLAB 、Toolboxes 、Complier2. ans:如果用户未定义变量名,系统用于计算结果存储的默认变量名pi :圆周率i 或j :虚数单位nargin :函数输入参数个数nargout :函数输出参数个数lasterr :存放最新的错误信息 lastwarn :存放最新的警告信息 3. 不会,会得到ans = 1.6180 + 1.1756i ;solve('t^5+32') %计算全部方根 ans =-2 -1/2*5^(1/2)+1/2-1/2*i*2^(1/2)*(5+5^(1/2))^(1/2) 1/2*5^(1/2)+1/2-1/2*i*2^(1/2)*(5-5^(1/2))^(1/2)1/2*5^(1/2)+1/2+1/2*i*2^(1/2)*(5-5^(1/2))^(1/2) -1/2*5^(1/2)+1/2+1/2*i*2^(1/2)*(5+5^(1/2))^(1/2)4. 空格和逗号都能起到分隔符的作用,逗号可作为函数分割符,也可用于区分行,现实运算结果,当然不加标点也显示运算结果,而在大多数情况下,MATLAB 对空格不予处理。

矩阵中空格与逗号相同一些固定的函数调用中,如solve 、subplot 等括号中的逗号不能替代为空格一般MATLAB 对空格不予处理,这些地方可以用空格,却不能用逗号,如表达式中,加空格不影响结果,但是加逗号就是错的;还有如“syms x y z ”,字母间的空格不能替代为逗号。

5. 实数数组: 8字节字符串数组:与字符数的个数有关,每个占2字节单元数组:与cell 中的数据类型有关,一般是在68字节的基础上加上数据所占的内存结构数组:具体字节数不确定,和结构所含的域的个数和数据有关。

每一个域用124个字节,每个字母用2字节,数字用8字节。

MATLAB习题及参考答案

MATLAB习题及参考答案

习题:1, 计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。

2, 对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。

3, 已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。

4, 角度[]604530=x ,求x 的正弦、余弦、正切和余切。

(应用sin,cos,tan.cot)5, 将矩阵⎥⎦⎤⎢⎣⎡=7524a 、⎥⎦⎤⎢⎣⎡=3817b 和⎥⎦⎤⎢⎣⎡=2695c 组合成两个新矩阵: (1)组合成一个4⨯3的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素,即 ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡237912685574(2)按照a 、b 、c 的列顺序组合成一个行矢量,即 []2965318772546, 将(x -6)(x -3)(x -8)展开为系数多项式的形式。

(应用poly,polyvalm)7, 求解多项式x 3-7x 2+2x +40的根。

(应用roots)8, 求解在x =8时多项式(x -1)(x -2) (x -3)(x -4)的值。

(应用poly,polyvalm)9, 计算多项式9514124234++--x x x x 的微分和积分。

(应用polyder,polyint ,poly2sym)10, 解方程组⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡66136221143092x 。

(应用x=a\b)11, 求欠定方程组⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡5865394742x 的最小范数解。

(应用pinv)12, 矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=943457624a ,计算a 的行列式和逆矩阵。

(应用det,inv)13, y =sin(x ),x 从0到2π,∆x =0.02π,求y 的最大值、最小值、均值和标准差。

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实验题目与答案

(温馨提示:实验课结束后,请将所有作业(题目、代码、结果)利用word 整理成一个完整的实验报告,加上封面,打印,纸质档于18周周一交)第一次上机作业目的:1. 掌握MATLAB 各种表达式的书写规则2. 运行课堂上讲过的例子,熟悉矩阵、表达式的基本操作和运算。

作业:1. 熟悉matlab 集成环境界面。

回答以下问题,并操作相关的指令:(1) 分别写出清除命令窗口和清除变量的指令。

答: clc 和clear(2)在命令行输入命令后,matlab 的搜索过程是怎样的?答: (1)检查该命令对象是不是一个变量。

(2)检查该命令对象是不是一个内部函数。

(3)检查该命令对象是否为当前目录下的程序文件。

(4)检查该命令对象是否为MATLAB 搜索路径中其他目录下的M 文件。

(3)什么是matlab 的当前工作目录?写出两种设置当前工作目录的方法? 答: 就是matlab 当前文件读取和存储的默认路径(1)在当前目录窗口中更改(2)在MATLAB 桌面工具栏中更改(3)使用cd 命令:cd c:\mydir---将c :\mydir 设置为当前目录(4)什么是matlab 的搜索路径?写出两种设置搜索路径的方法?答: 指Matlab 运行文件时进行搜索的目录。

(1)用path 命令设置:(2)用Set Path 对话框设置(5)help 命令和doc 命令有什么作用,它们有什么区别?答: help 命令:最基本的帮助命令,查询信息直接显示在命令窗口。

doc 命令:在帮助窗口中显示HTML 帮助文档,显示函数的详细用法及 例子,比help 命令更详细。

2. 在matlab 中输入下列表达式,并求各表达式的值,显示MATLAB 工作空间的使用情况并用两种方式保存全部变量,变量保存的文件名必须包含自己的学号后四位数:(1))1034245.01(26-⨯+⨯=w w=sqrt(2)*(1+0.34245*10^-6)w =1.4142(2),)tan(22ac b e abc c b a x ++-+++=ππ 其中a=3.5,b=5,c=9.8。

南京理工大学数字信号处理matlab上机完美版

南京理工大学数字信号处理matlab上机完美版

1.已知3阶椭圆IIR数字低通滤波器的性能指标为:通带截止频率0.4π,通带波纹为0.6dB,最小阻带衰减为32dB。

设计一个6阶全通滤波器对其通带的群延时进行均衡。

绘制低通滤波器和级联滤波器的群延时。

%Q1_solution%ellip(N,Ap,Ast,Wp)%N--->The order of the filter%Ap-->ripple in the passband%Ast->a stopband Rs dB down from the peak value in the passband%Wp-->the passband width[be,ae]=ellip(3,0.6,32,0.4);hellip=dfilt.df2(be,ae);f=0:0.001:0.4;g=grpdelay(hellip,f,2);g1=max(g)-g;[b,a,tau]=iirgrpdelay(6,f,[0 0.4],g1);hallpass=dfilt.df2(b,a);hoverall=cascade(hallpass,hellip);hFVT=fvtool([hellip,hoverall]);set(hFVT,'Filter',[hellip,hoverall]);legend(hFVT,'Lowpass Elliptic filter','Compensated filter');clear;[num1,den1]=ellip(3,0.6,32,0.4);[GdH,w]=grpdelay(num1,den1,512);plot(w/pi,GdH); gridxlabel('\omega/\pi'); ylabel('Group delay, samples');F=0:0.001:0.4;g=grpdelay(num1,den1,F,2); % Equalize the passbandGd=max(g)-g;% Design the allpass delay equalizer[num2,den2]=iirgrpdelay(6,F,[0,0.4],Gd);[GdA,w] = grpdelay(num2,den2,512);hold on;plot(w/pi,GdH+GdA,'r');legend('Original Filter','Compensated filter');2.设计巴特沃兹模拟低通滤波器,其滤波器的阶数和3-dB 截止频率由键盘输入,程序能根据输入的参数,绘制滤波器的增益响应。

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

一、问答题(15分)1. 在安装MATLAB 软件程序时,哪些组件(模块)是必须选择的?否则,不能建立MATLAB 工作环境。

答:Toolboxes MA TLAB Complier2. 下面的5个变量名,哪些合法哪些非法,为什么?①Do_you_know_the_way_to_heaven_Jesus ②1dog ③ dog1 ④_help ⑤What’s_up 答:①非法,因为每个变量名最长只能包含19个字符;②非法,因为变量名的首字符必须是字母;③ 合法;④非法,因为变量名的首字符必须是字母;⑤非法,因为变量名中不能有标点符号。

3.分别写出下面数组的大小和内容. 注意后面的数组可能根据前面数组的定义.①. a=1:2:5;② . b=[a', a', a'];③ . c=b(1:2:3, 1:2:3);④ . d=a+b(2,:);⑤ . w=[zeros(1,3), ones(3,1)', 3:5'];⑥ . b([1, 3],2)=b([3, 1],2);答:① a =【 1 3 5】② b =【 1 1 13 3 35 5 5】③ c =【 1 15 5】④ d =【 4 6 8】⑤ w =【 0 0 0 1 1 1 3 4 5】⑥ b =【 1 5 13 3 35 1 5】4. 根据下列矩阵回答问题① A 的大小是多少?② A(4,1)的值是多少?③ A(:,1:2)的大小和值分别是多少?④ A([1 3],end)的大小和值分别是多少?1.10.02.13.5 6.00.00.6 6.6 2.84.52.1 1.20.3 1.4 1.31.45.19.0 1.30.8A -⎡⎤⎢⎥-=⎢⎥-⎢⎥--⎣⎦答:①size(A)=【4 5】②A(4,1)= -1.4③size(A(:,1:2))= 【4 2】A(:,1:2)=【 1.1000 00 0.60002.1000 1.2000-1.4000 5.1000】④size(A([1 3],end)=【2 1】A([1 3],end)=【 6.00001.3000】5. 变量a的赋值为64,分别用4个类型的数组表示为:①(1×1)的实数数组a;②(1×1)的字符串数组a;③ (1×1)的单元(cell)数组a;④ (1×1)的结构(structure)数组a.a。

请问它们在内存空间中各占多少字节?答:分别是8、4、76、264个字节。

6. 求下列表达式的值①. 11/5+6 ②. (11/5)+b ③ . 11/(5+b)④. 3^2^3 ⑤ . 3^(2^3) ⑥ . (3^2)^3⑦. round(-11/5)+6 ⑧. ceil(-11/5)+6 ⑨ . floor(-11/5)+6答:①8.2 ②100.2 ③ 0.1068④729 ⑤ 6561 ⑥ 729⑦4 ⑧4 ⑨37.M(脚本)文件和M函数文件的主要区别在哪些方面?答:①M(脚本)文件和M函数文件在个是上不同。

脚本文件是命令代码,可以直接运行,而函数文件有固定的格式,供调用。

②文件保存名要求不同。

M脚本文件可以送是任意合法的名称,而函数文件必须是和函数名相同,否则无法调用。

③函数文件的变量都是局部变量,而脚本文件中的变量都是全局变量。

④调用脚本文件时,不用输入参数,也没有输出参数,文件自身建立需要的变量。

文件执行后文件中变量仍然保留在工作空间中。

8. 变量a,b,c ,d 的定义分别如下,如果下面运算是合法的,写出结果result 的值;如果不合法,给出原因.①. result=a+b; ②. result=a*d; ③. result=a.*d; ④. result=a*c;⑤. result=a.*c; ⑥. result=a\b; ⑦. result=a.\b; ⑧. result=a .^ b;答:① 【3 -3-1 4】② 【2 -2-1 2 】③ 【2 00 2 】④ 【6-5】⑤矩阵维度不匹配⑥ 【1 10.5 1.5】⑦ 【0.5 0.50 1】⑧ 【2 -0.51 4】二、求下列联立方程组中的各xi (i=1,2,3,4,5,6)的值。

-2.0x1+5.0x2+1.0x3+3.0x4+4.0x5-1.0x6=0.02.0x1-1.0x2 - 5.0x3-2.0x4+6.0x5+4.0x6=1.0-1.0x1+6.0x2 - 4.0x3-5.0x4+3.0x5 - 1.0x6= - 6.04.0x1+3.0x2 -6.0x3 -5.0x4 - 2.0x5 - 2.0x6=10.0- 3.0x1+6.0x2+4.0x3+2.0x4 - 6.0x5+4.0x6= - 6.02.0x1+4.0x2+4.0x3+4.0x4+5.0x5 - 4.0x6=- -2.0请编写实现上述运算的M 程序代码,并给出每条语句注释说明。

(10分)程序代码如下:clear %清除command windowclc %清除workspace ,即内存内容清空A=[-2 5 1 3 4 -12 -1 -5 -2 6 4-1 6 -4 -5 3 -14 3 -6 -5 -2 -2-3 6 4 2 -6 42 4 4 4 5 -4] %根据A*X=B ,输入矩阵AB=[0 1 -6 10 -6 2]' %根据A*X=B ,输入矩阵BX=A\B %求解未知数的向量矩阵x1=X(1),x2=X(2),x3=X(3),x4=X(4),x5=X(5),x6=X(6)%分别输出未知数的值 22111,,,(2)12022a b c d eye --⎡⎤⎡⎤⎡⎤====⎢⎥⎢⎥⎢⎥--⎣⎦⎣⎦⎣⎦三、球的位置和速度。

假设一静止小球在离地h0 的地方以初速度v0 做垂直运动,其等式为其中g 为重力加速度(9.81m/s2),h(t)代表在t 时刻小球的高度,v(t)代表在时刻t 小球的速度。

编写一个MATLAB 程序,计算出每一秒钟的速度和高度,其中设定h0=5m , v0=3m/s 。

分别利用二维曲线图形和三维曲线画出h 、v 关于时间t 的函数(t 从0秒至20秒,时间间隔0.1s)。

请编写实现上述运算的M 程序代码,并给出每条语句注释说明。

(20分)二维曲线图形的程序代码:clear %清除command windowclc %清除workspace ,即内存内容清空g=-9.81,h0=5,v0=3,i=0; %定义公式中的常量t=0:0.01:20; %建立时间的向量ht=1/2*g*t.*t+v0*t+h0; %计算高度的向量for i=1:2001if ht(i)>=0tm(i)=t(i);tmax=t(i);end end %去除高度小于0对应的时间vt=g*tm+v0; %计算在新的时间里的速度向量ht=1/2*g*tm.*tm+v0*tm+h0; %计算在新的时间里的高度向量plot(tm,vt,':r',tm,ht,'--g') %高度和速度关于时间的图像grid on %打开网格线line([0 tmax],[0 0]) %描出横坐标xlabel('时间t (s )') %标出横坐标的名称ylabel('高度h 和速度v') %标出纵坐标的名称title('球位置和速度的二维曲线') %设置图形标题text(tmax,0,'*落地') %标出高度函数的零点legend('速度v(m/s^2)','高度h(m/s)') %为函数写注解20001()2()h t gt v t h v t gt v⎧=++⎪⎨⎪=+⎩三维曲线图形的程序代码:clear %清除command windowclc %清除workspace,即内存内容清空g=-9.81,h0=5,v0=3,i=0; %定义公式中的常量t=0:0.01:20; %建立时间的向量ht=1/2*g*t.*t+v0*t+h0; %计算高度的向量for i=1:2001if ht(i)>=0tm(i)=t(i);tmax=t(i);endend%去除高度小于0对应的时间vt=g*tm+v0; %计算在新的时间里的速度向量ht=1/2*g*tm.*tm+v0*tm+h0; %计算在新的时间里的高度向量plot3(tm,vt,ht) %作出三维图像xlabel('时间t(s)') %标出X轴的名称ylabel('速度v(m/s^2)') %标出Y轴的名称zlabel('高度h(m)') %标出Z轴的名称grid on%打开网格线title('球位置和速度的三位曲线') %设置图形标题四、编写M文件,计算下题:欧拉公式。

公式定义如下:e i=cos+isin①创建一个二维曲线图,的取值0到2π之间,数据间隔为0.01 。

②创建一个三维曲线图,的取值0到2π之间,数据间隔为0.01。

然后新建一个图形窗口,利用图形窗口分割方法分别画出该三维曲线图在4个不同视角( - 37.5, 30)、( - 16, 60)、( - 100, 0)、(- -8, 12)下的三维图形,并对每个子图形标注坐标轴名称和图标题(标题内容为该图形的视角值)。

要求给出程序代码,以及每条语句的注释说明。

(其中视角坐标值(az, el)中az--方位角;el-- 俯视角) (20分)第一问程序代码:clear %清除command windowclc %清除workspace,即内存内容清空x=0:0.01:2*pi; %建立相位角的向量y=cos(x)+i*sin(x); %计算欧拉公式的值plot(y) %作出图像xlabel('实轴') %标出X轴的名称ylabel('虚轴') %标出Y轴的名称title('欧拉公式') %设置图形标题grid on%打开网格线axis square%图像可视框设为正方形axis([-1.25 1.25 -1.25 1.25]) %设置X、Y的极限第二问程序代码:clear %清除command windowclc %清除workspace,即内存内容清空x=0:0.01:2*pi; %建立相位角的向量y=cos(x); %用y表示欧拉公式的实部z=sin(x); %用z表示欧拉公式的虚部subplot(2,2,1) %分区,并在第一区工作plot3(y,z,x) %作出图像grid on%打开网格线view(-37.5,30) %用特定视角观察axis([-1 1 -1 1 0 7]) %确定极限title('(-37.5,30)') %设置图形标题xlabel('实部') %标出X轴的名称ylabel('虚部') %标出Y轴的名称zlabel('相角') %标出Z轴的名称subplot(2,2,2)plot3(y,z,x)grid onview(-16,60)axis([-1 1 -1 1 0 7])title('(-16,60)')xlabel('实部')ylabel('虚部')zlabel('相角') %在第二区工作,其他同第一区subplot(2,2,3)plot3(y,z,x)grid onview(-100,0)axis([-1 1 -1 1 0 7])title('(-100,0)')xlabel('实部')ylabel('虚部')zlabel('相角') %在第二区工作,其他同第一区subplot(2,2,4)plot3(y,z,x)grid onview(-8,-12)axis([-1 1 -1 1 0 7])title('(-8,-12)')xlabel('实部')ylabel('虚部')zlabel('相角') %在第二区工作,其他同第一区五、A、B、C三个城市,上半年每个月的国民生产总值(单位:亿元)如右表。

相关文档
最新文档