MATLAB40道题与答案修正版

合集下载

matlab期末复习题及答案

matlab期末复习题及答案

matlab期末复习题及答案1. MATLAB基础操作在MATLAB中,如何创建一个名为"myMatrix"的3x3矩阵,其元素分别为1, 2, 3, 4, 5, 6, 7, 8, 9?答案:在MATLAB中,可以通过直接输入矩阵元素来创建矩阵。

例如,要创建一个名为"myMatrix"的3x3矩阵,可以使用以下命令:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```这样,MATLAB就会创建一个3x3的矩阵,其元素按照行顺序排列。

2. 矩阵运算给定两个矩阵A和B,其中A = [1 2; 3 4],B = [5 6; 7 8],计算矩阵A和B的和。

答案:在MATLAB中,可以使用加号(+)来计算两个矩阵的和。

对于给定的矩阵A和B,可以使用以下命令来计算它们的和:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A + B;```执行上述命令后,矩阵C的结果将是:```C = [6 8;10 12];```3. 条件语句编写一个MATLAB脚本,判断一个给定的数n是否为质数,并输出相应的信息。

答案:在MATLAB中,可以使用if-else语句来判断一个数是否为质数。

以下是一个简单的脚本示例:```matlabn = input('请输入一个数:');if mod(n, 2) == 0 && n > 2disp('该数不是质数');elseif n == 1disp('1不是质数');elseisPrime = true;for i = 2:sqrt(n)if mod(n, i) == 0isPrime = false;break;endendif isPrimedisp('该数是质数');elsedisp('该数不是质数');endend```该脚本首先接收用户输入的数n,然后通过一个for循环检查n是否有除了1和它自身以外的因数,从而判断n是否为质数。

MATLAB编程练习(含答案很好的)

MATLAB编程练习(含答案很好的)

001双峰曲线图:z=peaks(40);mesh(z);surf(z)002解方程:A=[3,4,-2;6,2,-3;45,5,4];>> B=[14;4;23];>> root=inv(A)*B003傅里叶变换load mtlb ;subplot(2,1,1);plot(mtlb);>> title('原始语音信息');>> y=fft(mtlb);>> subplot(2,1,2);>> yy=abs(y);>> plot(yy);>> title('傅里叶变换')004输入函数:a=input('How many apples\n','s')005输出函数a=[1 2 3 4 ;5 6 7 8;12 23 34 45;34 435 23 34]a =1 2 3 45 6 7 812 23 34 4534 435 23 34disp(a)a =1 2 3 45 6 7 812 23 34 4534 435 23 34b=input('how many people\n' ,'s')how many peopletwo peopleb =two people>> disp(b)two people>>006求一元二次方程的根a=1;b=2;c=3;d=sqrt(b^2-4*a*c);x1=(-b+d)/(2*a)x1 =-1.0000 + 1.4142i>> x2=(-b-d)/(2*a)x2 =-1.0000 - 1.4142i007求矩阵的相乘、转置、存盘、读入数据A=[1 3 5 ;2 4 6;-1 0 -2;-3 0 0];>> B=[-1 3;-2 2;2 1];>> C=A*BC =3 142 20-3 -53 -9>> C=C'C =3 2 -3 314 20 -5 -9>> save mydat C>> clear>> load mydat C008编写数学计算公式:A=2.1;B=-4.5;C=6;D=3.5;E=-5;K=atan(((2*pi*A)+E/(2*pi*B*C))/D) K =1.3121009A=[1 0 -1;2 4 1;-2 0 5];>> B=[0 -1 0;2 1 3;1 1 2];>> H=2*A+BH =2 -1 -26 9 5-3 1 12>> M=A^2-3*BM =3 3 -62 13 -2-15 -3 21>> Y=A*BY =-1 -2 -29 3 145 7 10>> R=B*AR =-2 -4 -1-2 4 14-1 4 10>> E=A.*BE =0 0 04 4 3-2 0 10>> W=A\BW =0.3333 -1.3333 0.66670.2500 1.0000 0.25000.3333 -0.3333 0.6667 >> P=A/BP =-2.0000 3.0000 -5.0000-5.0000 3.0000 -4.00007.0000 -9.0000 16.0000>> Z=A.\BWarning: Divide by zero.Z =0 -Inf 01.0000 0.2500 3.0000-0.5000 Inf 0.4000>> D=A./BWarning: Divide by zero.D =Inf 0 -Inf1.0000 4.0000 0.3333-2.0000 0 2.5000010a=4.96;b=8.11;>> M=exp(a+b)/log10(a+b)M =4.2507e+005011求三角形面积:a=9.6;b=13.7;c=19.4;>> s=(a+b+c)/2;>> area=sqrt(s*(s-a)*(s-b)*(s-c))area =61.1739012逻辑运算A=[-1 0 -6 8;-9 4 0 12.3;0 0 -5.1 -2;0 -23 0 -7]; >> B=A(:,1:2)B =-1 0-9 40 00 -23>> C=A(1:2,:)C =-1.0000 0 -6.0000 8.0000 -9.0000 4.0000 0 12.3000>> D=B'D =-1 -9 0 00 4 0 -23>> A*Bans =1.0000 -184.0000-27.0000 -266.90000 46.0000 207.0000 69.0000>> C<Dans =0 0 1 01 0 0 0>> C&Dans =1 0 0 00 1 0 1>> C|Dans =1 1 1 11 1 0 1>> ~C|~Dans =0 1 1 11 0 1 0013矩阵运算练习:A=[8 9 5;36 -7 11;21 -8 5]A =8 9 536 -7 1121 -8 5>> BB =-1 3 -22 0 3-3 1 9>> RT=A*BRT =-5 29 56-83 119 6-52 68 -21>> QW=A.*BQW =-8 27 -1072 0 33-63 -8 45>> ER=A^3ER =6272 3342 294415714 -856 52608142 -1906 2390 >> BF=A.^3BF =512 729 12546656 -343 13319261 -512 125 >> A/Bans =3.13414.9634 -0.4024-1.2561 12.5244 -3.2317-1.9878 6.4512 -2.0366>> EKV=B\AEKV =10.7195 -1.2683 3.52449.4756 1.5854 3.71954.8537 -1.4878 1.3171>> KDK=[A,B]KDK =8 9 5 -1 3 -236 -7 11 2 0 321 -8 5 -3 1 9 >> ERI=[A;B]ERI =8 9 536 -7 1121 -8 5-1 3 -22 0 3-3 1 9014一般函数的调用:A=[2 34 88 390 848 939];>> S=sum(A)S =2301>> min(A)ans =2>> EE=mean(A)EE =383.5000>> QQ=std(A)QQ =419.3794>> AO=sort(A)AO =2 34 88 390 848 939 >> yr=norm(A)yr =1.3273e+003>> RT=prod(A)RT =1.8583e+012>> gradient(A)ans =32.0000 43.0000 178.0000 380.0000 274.5000 91.0000 >> max(A)ans =939>> median(A)ans =239>> diff(A)ans =32 54 302 458 91>> length(A)ans =6>> sum(A)ans =2301>> cov(A)ans =1.7588e+005>>015矩阵变换:A=[34 44 23;8 34 23;34 55 2]A =34 44 238 34 2334 55 2>> tril(A)ans =34 0 08 34 034 55 2>> triu(A)ans =34 44 230 34 230 0 2>> diag(A)ans =34342norm(A)ans =94.5106>> rank(A)ans =3>> det(A)ans =-23462>> trace(A)ans =70>> null(A)ans =Empty matrix: 3-by-0>> eig(A)ans =80.158712.7671-22.9257>> poly(A)ans =1.0e+004 *0.0001 -0.0070 -0.1107 2.3462>> logm(A)Warning: Principal matrix logarithm is not defined for A with nonpositive real eigenvalues. A non-principal matrixlogarithm is returned.> In funm at 153In logm at 27ans =3.1909 + 0.1314i 1.2707 + 0.1437i 0.5011 - 0.2538i0.4648 + 0.4974i 3.3955 + 0.5438i 0.1504 - 0.9608i0.2935 - 1.2769i 0.8069 - 1.3960i 3.4768 + 2.4663i>> fumn(A)Undefined command/function 'fumn'.>> inv(A)ans =0.0510 -0.0502 -0.0098-0.0326 0.0304 0.02550.0305 0.0159 -0.0343>> cond(A)ans =8.5072>> chol(A)Error using ==> cholMatrix must be positive definite.>> lu(A)ans =34.0000 44.0000 23.00000.2353 23.6471 17.58821.0000 0.4652 -29.1816>> pinv(A)ans =0.0510 -0.0502 -0.0098-0.0326 0.0304 0.02550.0305 0.0159 -0.0343>> svd(A)ans =94.510622.345611.1095>> expm(A)ans =1.0e+034 *2.1897 4.3968 1.93821.31542.6412 1.16431.8782 3.7712 1.6625>> sqrtm(A)ans =5.2379 + 0.2003i 3.4795 + 0.2190i 1.8946 - 0.3869i0.5241 + 0.7581i 5.1429 + 0.8288i 2.0575 - 1.4644i3.0084 - 1.9461i4.7123 - 2.1276i 2.1454 + 3.7589i >>016多项式的计算:A=[34 44 23;8 34 23;34 55 2]A =34 44 238 34 2334 55 2>> P=poly(A)P =1.0e+004 *0.0001 -0.0070 -0.1107 2.3462>> PPA=poly2str(P,'X')PPA =X^3 - 70 X^2 - 1107 X + 23462017多项式的运算:p=[2 6 8 3];w=[32 56 0 2];>> m=conv(p,w)m =64 304 592 548 180 16 6 >> [q,r]=deconv(w,p)q =16r =0 -40 -128 -46>> dp=polyder(w)dp =96 112 0>> [num,den]=polyder(w,p)num =80 512 724 312 -16den =4 24 68 108 100 48 9>> b=polyfit(p,w,4)Warning: Polynomial is not unique; degree >= number of data points. > In polyfit at 74b =-0.6704 9.2037 -32.2593 0 98.1333>> r=roots(p)r =-1.2119 + 1.0652i-1.2119 - 1.0652i-0.5761018求多项式的商和余p=conv([1 0 2],conv([1 4],[1 1]))p =1 5 6 10 8>> q=[1 0 1 1]q =1 0 1 1>> [w,m]=deconv(p,q)w =1 5m =0 0 5 4 3>> cq=w;cr=m;>> disp([cr,poly2str(m,'x')])5 x^2 + 4 x + 3>> disp([cq,poly2str(w,'x')])x + 5019将分式分解a=[1 5 6];b=[1];>> [r,p,k]=residue(b,a)r =-1.00001.0000p =-3.0000-2.0000k =[]020计算多项式:a=[1 2 3;4 5 6;7 8 9];>> p=[3 0 2 3];>> q=[2 3];>> x=2;>> r=roots(p)r =0.3911 + 1.0609i0.3911 - 1.0609i-0.7822>> p1=conv(p,q)p1 =6 9 4 12 9>> p2=poly(a)p2 =1.0000 -15.0000 -18.0000 -0.0000 >> p3=polyder(p)p3 =9 0 2>> p4=polyval(p,x)p4 =31021求除式和余项:[q,r]=deconv(conv([1 0 2],[1 4]),[1 1 1])022字符串的书写格式:s='student's =student>> name='mary';>> s1=[name s]s1 =marystudent>> s3=[name blanks(3);s]s3 =marystudent>>023交换两个数:clearclca=[1 2 3 4 5];b=[6 7 8 9 10];c=a;a=b;b=c;ab24If语句n=input('enter a number,n=');if n<10nend025 if 双分支结构a=input('enter a number ,a=');b=input('enter a number ,b=');if a>bmax=a;elsemax=b;endmax026三个数按照由大到小的顺序排列:A=15;B=24;C=45;if A<BT=A;A=B;B=T;elseif A<CT=A;A=C;C=T;elseif B<CT=B;B=C;C=T;endABC027建立一个收费优惠系统:price=input('please jinput the price : price=') switch fix(price/100)case[0,1]rate =0;case[2,3,4]rate =3/100;case num2cell(5:9)rate=5/100;case num2cell(10:24)rate=8/100;case num2cell(25:49)rate=10/100;otherwiserate=14/100;endprice=price*(1-rate)028:while循环语句i=0;s=0;while i<=1212s=s+i;i=i+1;ends029,用for循环体语句:sum=0;for i=1:1.5:100;sum=sum+i;endsum030循环的嵌套s=0;for i=1:1:6;for j=1:1:8;s=s+i^j;end;end;s031continue 语句的使用:for i=100:120;if rem(i,7)~=0;continue;end;iend032x=input ('输入X的值x=')if x<1y=x^2;elseif x>1&x<2y=x^2-1;elsey=x^2-2*x+1;endy033求阶乘的累加和sum=0;temp=1;for n=1:10;temp=temp*n;sum=sum+temp;endsum034对角线元素之和sum=0;a=[1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16]; for i=1:4;sum=sum+a(i,i);endsum035用拟合点绘图A=[12 15.3 16 18 25];B=[50 80 118 125 150.8];plot(A,B)036绘制正玄曲线:x=0:0.05:4*pi;y=sin(x);plot(x,y)037绘制向量x=[1 2 3 4 5 6;7 8 9 10 11 12;13 14 15 16 17 18] plot(x)x=[0 0.2 0.5 0.7 0.6 0.7 1.2 1.5 1.6 1.9 2.3]plot(x)x=0:0.2:2*piy=sin(x)plot(x,y,'m:p')038在正弦函数上加标注:t=0:0.05:2*pi;plot(t,sin(t))set(gca,'xtick',[0 1.4 3.14 56.28])xlabel('t(deg)')ylabel('magnitude(v)')title('this is a example ()\rightarrow 2\pi')text(3.14,sin(3.14),'\leftarrow this zero for\pi')039添加线条标注x=0:0.2:12;plot(x,sin(x),'-',x,1.5*cos(x),':');legend('First','Second',1)040使用hold on 函数x=0:0.2:12;plot(x,sin(x),'-');hold onplot(x,1.5*cos(x),':');041一界面多幅图x=0:0.05:7;y1=sin(x);y2=1.5*cos(x);y3=sin(2*x);y4=5*cos(2*x);subplot(221);plot(x,y1);title('sin(x)')subplot(222);plot(x,y2);title('cos(x)')subplot(223);plot(x,y3);title('sin(2x)')subplot(224);plot(x,y4);title('cos(2x)')042染色效果图x=0:0.05:7;y1=sin(x);y2=1.5*cos(x);y3=sin(2*x);y4=5*cos(2*x);subplot(221);plot(x,y1);title('sin(x)');fill(x,y1,'r') subplot(222);plot(x,y2);title('cos(x)');fill(x,y2,'b') subplot(223);plot(x,y3);title('sin(2x)');fill(x,y3,'k') subplot(224);plot(x,y4);title('cos(2x)');fill(x,y4,'g')043特殊坐标图clcy=[0,0.55,2.5,6.1,8.5,12.1,14.6,17,20,22,22.1] subplot(221);plot(y);title('线性坐标图');subplot(222);semilogx(y);title('x轴对数坐标图');subplot(223);semilogx(y);title('y轴对数坐标图');subplot(224);loglog(y);title('双对数坐标图')t=0:0.01:2*pi;r=2*cos(2*(t-pi/8));polar(t,r)044特殊函数绘图:fplot('cos(tan(pi*x))',[-0.4,1.4])fplot('sin(exp(pi*x))',[-0.4,1.4])045饼形图与条形图:x=[8 20 36 24 12];subplot(221);pie(x,[1 0 0 0 1]);title('饼图');subplot(222);bar(x,'group');title('垂直条形图');subplot(223);bar(x,'stack');title('累加值为纵坐标的垂直条形图'); subplot(224);barh(x,'group');title('水平条形图');046梯形图与正弦函数x=0:0.1:10;y=sin(x);subplot(121);stairs(x);subplot(122);stairs(x,y);047概率图x=randn(1,1000);y=-2:0.1:2;hist(x,y)048向量图:x=[-2+3j,3+4j,1-7j];subplot(121);compass(x);rea=[-2 3 1];imag=[3 4 -7];subplot(122);feather(rea,imag);049绘制三维曲线图:z=0:pi/50:10*pi;x=sin(z);y=cos(z);plot3(x,y,z)x=-10:0.5:10;y=-8:0.5:8;[x,y]=meshgrid(x,y);z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2); subplot(221);mesh(x,y,z);title('普通一维网格曲面');subplot(222);meshc(x,y,z);title('带等高线的三维网格曲面'); subplot(223);meshz(x,y,z);title('带底座的三维网格曲面'); subplot(224);surf(x,y,z);title('充填颜色的三维网格面')050 带网格二维图x=0:pi/10:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,'r+-',x,y2,'k*:')grid onxlabel('Independent Variable x') ylabel('Dependent Variable y1&y2') text(1.5,0.5,'cos(x)')051各种统计图y=[18 5 28 17;24 12 36 14;15 6 30 9]; subplot(221);bar(y)x=[4,6,8];subplot(222);bar3(x,y)subplot(223);bar(x,y,'grouped') subplot(224);bar(x,y,'stack')052曲面图x=-2:0.4:2;y=-1:0.2:1;[x,y]=meshgrid(x,y);z=sqrt(4-x.^2/9-y.^2/4); surf(x,y,z)grid on053创建符号矩阵e=[1 3 5;2 4 6;7 9 11];m=sym(e)符号表达式的计算问题因式分解:syms xf=factor(x^3-1)s=sym('sin(a+b)'); expand(s)syms x tf=x*(x*(x-8)+6)*t; collect(f)syms xf=sin(x)^2+cos(x)^2; simplify(f)syms xs=(4*x^2+8*x+3)/(2*x+1); simplify(s)通分syms x yf=x/y-y/x;[m,n]=numden(f)嵌套重写syms xf=x^4+3*x^3-7*x^2+12; horner(f)054求极限syms x a;limit(exp(-x),x,0,'left')求导数syms xdiff(x^9+x^6)diff(x^9+x^6,4)055求不定积分与定积分syms x ys=(4-3*x^2)^2;int(s)int(x/(x+y),x)int(x^2/(x+2),x,1,3) double(ans)056函数的变换:syms x ty=exp(-x^2);Ft=fourier(y,x,t)fx=ifourier(Ft,t,x)057求解方程syms a b c xs=a*x^2+b*x+c;solve(s)syms x y zs1=2*x^2+y^2-3*z-4;s2=y+z-3;s3=x-2*y-3*z;[x,y,z]=solve(s1,s2,s3)058求微分方程:y=dsolve('Dy-(t^2+y^2)/t^2/2','t')059求级数和syms x ksymsum(k)symsum(k^2-3,0,10)symsum(x^k/k,k,1,inf)060泰勒展开式syms xs=(1-x+x^2)/(1+x+x^2);taylor(s)taylor(s,9)taylor(s,x,12)taylor(s,x,12,5)061练习syms x a;s1=sin(2*x)/sin(5*x);limit(s1,x,0)s2=(1+1/x)^(2*x);limit(s2,x,inf)syms xs=x*cos(x);diff(s)diff(s,2)diff(s,12)syms xs1=x^4/(1+x^2);int(s1)s2=3*x^2-x+1int(s2,0,2)syms x y zs1=5*x+6*y+7*z-16;s2=4*x-5*y+z-7;s3=x+y+2*z-2;[x,y,z]=solve(s1,s2,s3)syms x yy=dsolve('Dy=exp(2*x-y)','x')y=dsolve('Dy=exp(2*x-y)','y(0)=0','x')n=sym('n');s=symsum(1/n^2,n,1,inf)x=sym('x');f=sqrt(1-2*x+x^3)-(1-3*x+x^2)^(1/3);taylor(f,6)062求于矩阵相关的值a=[2 2 -1 1;4 3 -1 2;8 5 -3 4;3 3 -2 2]adet=det(a)atrace=trace(a)anorm=norm(a)acond=cond(a)arank=rank(a)eiga=eig(a)063矩阵计算A=[0.1389 0.6038 0.0153 0.9318;0.2028 0.2772 0.7468 0.4660;0.1987 0.1988 0.4451 0.4186]B=var(A)C=std(A)D=range(A)E=cov(A)F=corrcoef(A)064求根及求代数式的值P=[4 -3 2 5];x=roots(P)x=[3 3.6];F=polyval(P,x)065多项式的和差积商运算:f=[1 2 -4 3 -1]g=[1 0 1]g1=[0 0 1 0 1]f+g1f-g1conv(f,g)[q,r]=deconv(f,g)polyder(f)066各种插值运算:X=0:0.1:pi/2;Y=sin(X);interp1(X,Y,pi/4)interp1(X,Y,pi/4,'nearest')interp1(X,Y,pi/4,'spline')interp1(X,Y,pi/4,'cubic')067曲线的拟合:X=0:0.1:2*pi;Y=cos(X);[p,s]=polyfit(X,Y,4)plot(X,Y,'K*',X,polyval(p,X),'r-')068求函数的最值与0点x=2:0.1:2;[x,y]=fminbnd('x.^3-2*x+1',-1,1) [x,y]=fzero('x.^3-2*x+1',1)069求多项式的表达式、值、及图像y=[1 3 5 7 19]t=poly(y)x=-4:0.5:8yx=polyval(t,x)plot(x,yx)070数据的拟合与绘图x=0:0.1:2*pi;y=sin(x);p=polyfit(x,y,5);y1=polyval(p,x)plot(x,y,'b',x,y1,'r')071求代数式的极限:syms xf=sym('log(1+2*x)/sin(3*x)');b=limit(f,x,0)072求导数与微分syms xf=sym('x/(cos(x))^2');y1=diff(f)y2=int(f,0,1)078划分网格函数[x,y]=meshgrid(-2:0.01:2,-3:0.01:5); t=x.*exp(-x.^2-y.^2);[px,py]=gradient(t,0.05,0.1);td=sqrt(px.^2+py.^2);subplot(221)imagesc(t)subplot(222)imagesc(td)colormap('gray')079求多次多项方程组的解:syms x1 x2 a ;eq1=sym('x1^2+x2=a')eq2=sym('x1-a*x2=0')[x1 x2]=solve(eq1,eq2,x1,x2)v=solve(eq1,eq2)v.x1v.x2an1=x1(1),an2=x1(2)an3=x2(1),an4=x2(2)080求解微分方程:[y]=dsolve('Dy=-y^2+6*y','y(0)=1','x')s=dsolve('Dy=-y^2+6*y','y(0)=1','x')[u]=dsolve('Du=-u^2+6*u','u(0)=1')w=dsolve('Du=-u^2+6*u','z')[u,w]=dsolve('Du=-w^2+6*w,Dw=sin(z)','u(0)=1,w(0)=0','z') v=dsolve('Du=-w^2+6*w,Dw=sin(z)','u(0)=1,w(0)=0','z')081各种显现隐含函数绘图:f=sym('x^2+1')subplot(221)ezplot(f,[-2,2])subplot(222)ezplot('y^2-x^6-1',[-2,2],[0,10])x=sym('cos(t)')y=sym('sin(t)')subplot(223)ezplot(x,y)z=sym('t^2')subplot(224)ezplot3(x,y,z,[0,8*pi])082极坐标图:r=sym('4*sin(3*x)')ezpolar(r,[0,6*pi])083多函数在一个坐标系内:x=0:0.1:8;y1=sin(x);subplot(221)plot(x,y1)subplot(222)plot(x,y1,x,y2)w=[2 3;3 1;4 6]subplot(223)plot(w)q=[4 6:3 5:1 2]subplot(224)plot(w,q)084调整刻度图像:x=0:0.1:10;y1=sin(x);y2=exp(x);y3=exp(x).*sin(x);subplot(221)plot(x,y2)subplot(222)loglog(x,y2)subplot(223)plotyy(x,y1,x,y2)085等高线等图形,三维图:t=0:pi/50:10*pi;subplot(2,3,1)plot3(t.*sin(t),t.*cos(t),t.^2) grid on[x,y]=meshgrid([-2:0.1:2])z=x.*exp(-x.^2-y.^2)subplot(2,3,2)plot3(x,y,z)box offsubplot(2,3,3)meshz(x,y,z)subplot(2,3,4)surf(x,y,z)contour(x,y,z)subplot(2,3,6)surf(x,y,z)subplot(2,3,5)contour(x,y,z)box offsubplot(2,3,6)contour3(x,y,z)axis off086统计图Y=[5 2 1;8 7 3;9 8 6;5 5 5;4 3 2]subplot(221)bar(Y)box offsubplot(222)bar3(Y)subplot(223)barh(Y)subplot(224)bar3h(Y)087面积图Y=[5 1 2;8 3 7;9 6 8;5 5 5;4 2 3];subplot(221)area(Y)grid onset(gca,'Layer','top','XTick',1:5)sales=[51.6 82.4 90.8 59.1 47.0];x=90:94;profits=[19.3 34.2 61.4 50.5 29.4];subplot(222)area(x,sales,'facecolor',[0.5 0.9 0.6], 'edgecolor','b','linewidth',2) hold onarea(x,profits,'facecolor',[0.9 0.85 0.7], 'edgecolor','y','linewidth',2) hold offset(gca,'Xtick',[90:94])set(gca,'layer','top')gtext('\leftarrow 销售量') gtext('利润')gtext('费用')xlabel('年','fontsize',14)088函数的插值:x=0:2*pi;y=sin(x);xi=0:0.1:8;yi1=interp1(x,y,xi,'linear')yi2=interp1(x,y,xi,'nearest') yi3=interp1(x,y,xi,'spline')yi4=interp1(x,y,xi,'cublic')p=polyfit(x,y,3)yy=polyval(p,xi)subplot(3,2,1)plot(x,y,'o')subplot(3,2,2)plot(x,y,'o',xi,yy)subplot(3,2,3)plot(x,y,'o',xi,yi1)subplot(3,2,4)plot(x,y,'o',xi,yi2)subplot(3,2,5)plot(x,y,'o',xi,yi3)subplot(3,2,6)plot(x,y,'o',xi,yi4)089二维插值计算:[x,y]=meshgrid(-3:0.5:3);z=peaks(x,y);[xi,yi]=meshgrid(-3:0.1:3); zi=interp2(x,y,z,xi,yi,'spline') plot3(x,y,z)hold onmesh(xi,yi,zi+15)hold offaxis tight090函数表达式;function f=exlin(x)if x<0f=-1;elseif x<1f=x;elseif x<2f=2-x;elsef=0;end091:硬循环语句:n=5;for i=1:nfor j=1:nif i==ja(i,j)=2;elsea(i,j)=0;endendendwhile 循环语句:n=1;while prod(1:n)<99^99;n=n+1endn:092 switch开关语句a=input('a=?')switch acase 1disp('It is raning') case 0disp('It do not know')case -1disp('It is not ranging')otherwisedisp('It is raning ?')end093画曲面函数:x1=linspace(-3,3,30)y1=linspace(-3,13,34)[x,y]=meshgrid(x1,y1);z=x.^4+3*x.^2-2*x+6-2*y.*x.^2+y.^2-2*y; surf(x,y,z)。

(完整版)matlab基础练习题(带答案)

(完整版)matlab基础练习题(带答案)

Matlab 基础练习题常量、变量、表达式1、 MATLAB 中,下面哪些变量名是合法的?( )(A )_num (B )num_ (C )num- (D )-num 2、 在MA TLAB 中,要给出一个复数z 的模,应该使用( )函数。

(A )mod(z) (B )abs(z) (C )double(z) (D )angle(z) 3、 下面属于MATLAB 的预定义特殊变量的是?( )(A )eps (B )none (C )zero (D )exp4、 判断:在MA TLAB 的内存工作区中,存放一个英文字符 'a' 需要占用1个字节,存放一个中文字符‘啊’需要占用2个字节。

( 错,都是2个字节 )5、 判断:MA TLAB 中,i 和j ( 对 )6、 判断:MA TLAB 中,pi 代表圆周率,它等于3.14。

( 错,后面还有很多位小数 )7、 在MA TLAB 中,若想计算的51)3.0sin(21+=πy 值,那么应该在MA TLAB 的指令窗中输入的MA TLAB 指令是__y1=2*sin(0.3*pi)/(1+sqrt(5))_。

8、 在MA TLAB 中,a = 1,b = i ,则a 占_8__个字节,b 占_16_个字节,c 占________字节。

9、 在MA TLAB 中,inf 的含义是__无穷大__,nan 的含义是__非数(结果不定)___。

数组1、 在MA TLAB 中,X 是一个一维数值数组,现在要把数组X 中的所有元素按原来次序的逆序排列输出,应该使用下面的( )指令。

(A )X[end:1] (B )X[end:-1:1] (C )X (end:-1:1) (D )X(end:1) 2、 在MA TLAB 中,A 是一个字二维数组,要获取A 的行数和列数,应该使用的MATLAB的命令是( )。

(A )class(A) (B )sizeof(A) (C )size(A) (D )isa(A)3、 在MATLAB 中,用指令x=1:9生成数组x 。

MATLAB40道题与答案修正版

MATLAB40道题与答案修正版

操作方法:首先点击File —New —M-File ,输入相应代码,然后点击运行按钮即可。

P1.已知两序列[]0.8{[][5]}nx n u n u n =--,[]{1,1,1,1,1}h n =计算两序列的卷积并绘制其波形。

%function a1 for i=1:5x(i)=0.8^(i-1); endh=[1 1 1 1 1]; y=conv(x,h) m=0:8;stem(m,y,'filled')P2。

已知复指数序列(1.52)[] 1.2j nx n e +=,绘制20点该序列的实部和虚部。

n=0:19;x=1.2*exp((1.5+j*2)*n); subplot(211); stem(n,real(x)); ylabel('real part'); xlabel('n'); legend('x[n]'); subplot(212); stem(n,imag(x)); ylabel('imag part'); xlabel('n'); legend('x[n]');P3.编写长度为5的中值滤波器程序。

原始未受干扰的序列为:s[n]=3[n(0.5) ]n ,加性噪声信号d[n]为随机序列,幅度0.4,分别绘制长度为40的受干扰序列,以及中值滤波器的输出。

% Program 2_5% Illustration of Median Filtering N = 5; R = 40;a = 0.8*rand(1,R)-0.4;b = round(a); % Generate impulse noise m = 0:R-1;s =3*m.*(0.5.^m); % Generate signalx = s + b; % Impulse noise corrupted signal y = medfilt1(x,N); % Median filtering subplot(2,1,1) stem(m,x);xlabel('n');ylabel('Amplitude');title('Impulse Noise Corrupted Signal'); subplot(2,1,2) stem(m,y);xlabel('n');ylabel('Amplitude'); title('Output of Median Filter'); P4. 已知序列x1[n]={2.2,3,1.5,4.2,1.8}, x2[n]= {0.8,1,1.6,0.8},x[n]=x1[n]∗x2[n] (卷积),分别绘制序列x1[n] ,x2[n]和x [n]的波形。

matlab开卷考试题及答案

matlab开卷考试题及答案

matlab开卷考试题及答案MATLAB开卷考试题及答案一、选择题(每题2分,共20分)1. MATLAB中用于创建一个3x3的单位矩阵的命令是:A. `eye(3)`B. `ones(3)`C. `zeros(3)`D. `identity(3)`答案:A2. 下列哪个函数用于计算矩阵的逆?A. `inv()`B. `det()`C. `eig()`D. `trace()`答案:A3. MATLAB中,用于绘制二维图形的函数是:A. `plot()`B. `surf()`C. `mesh()`D. `bar()`答案:A4. 如何在MATLAB中计算向量的范数?A. `norm()`B. `abs()`C. `length()`D. `size()`答案:A5. MATLAB中,用于创建一个随机数矩阵的函数是:A. `rand()`B. `randi()`C. `randn()`D. `randperm()`答案:A6. 下列哪个命令用于在MATLAB中求解线性方程组?A. `solve()`B. `fsolve()`C. `fzero()`D. `linsolve()`答案:A7. MATLAB中,用于计算矩阵的行列式的函数是:A. `det()`B. `trace()`C. `eig()`D. `inv()`答案:A8. 如何在MATLAB中创建一个全1的3x3矩阵?A. `ones(3,3)`B. `eye(3,3)`C. `zeros(3,3)`D. `rand(3,3)`答案:A9. MATLAB中,用于计算矩阵的特征值的函数是:A. `eig()`B. `eigs()`C. `svd()`D. `qr()`答案:A10. 下列哪个函数用于计算矩阵的奇异值分解?A. `eig()`B. `svd()`C. `qr()`D. `lu()`答案:B二、填空题(每题3分,共30分)1. MATLAB中,用于创建一个3x3的零矩阵的命令是 `____`。

matlab习题及答案

matlab习题及答案

matlab习题及答案Matlab习题及答案Matlab是一种强大的数学计算软件,被广泛应用于科学计算、数据分析和工程设计等领域。

在学习和使用Matlab的过程中,习题是一种非常有效的学习方式。

本文将给出一些常见的Matlab习题及其答案,帮助读者更好地掌握Matlab的使用技巧。

一、基础习题1. 计算1到100之间所有奇数的和。

解答:```matlabsum = 0;for i = 1:2:100sum = sum + i;enddisp(sum);```2. 编写一个函数,计算任意两个数的最大公约数。

解答:```matlabfunction gcd = computeGCD(a, b)while b ~= 0temp = b;a = temp;endgcd = a;end```3. 编写一个程序,生成一个5×5的随机矩阵,并计算矩阵的行和列的平均值。

解答:```matlabmatrix = rand(5);row_average = mean(matrix, 2);col_average = mean(matrix);disp(row_average);disp(col_average);```二、进阶习题1. 编写一个程序,实现插入排序算法。

解答:```matlabfunction sorted_array = insertionSort(array)n = length(array);for i = 2:nj = i - 1;while j > 0 && array(j) > keyarray(j+1) = array(j);j = j - 1;endarray(j+1) = key;endsorted_array = array;end```2. 编写一个程序,实现矩阵的转置。

解答:```matlabfunction transposed_matrix = transposeMatrix(matrix) [m, n] = size(matrix);transposed_matrix = zeros(n, m);for i = 1:mfor j = 1:ntransposed_matrix(j, i) = matrix(i, j);endendend```3. 编写一个程序,实现二分查找算法。

matlab试卷合集附答案

matlab试卷合集附答案

一、填空题1、求可逆矩阵A的逆矩阵的指令是 inv(A)2、A=[0 2 3 0],B=[4 5 0 0],则X=A&B的显示结果为 0 1 0 03、求矩阵A的转置矩阵的指令是: A’4、x=[10 -20 30]; a=sign(x);显示结果为 1 -1 15、Notebook是Matlab的文字处理工具,启动Notebook有两种方法,即一种是在 Word 中启动,另一种是在 Matlab 中启动。

6、Matlab7.3提供了非常强大的帮助系统,包括帮助命令、帮助窗口、HTML格式帮助、pdf格式帮助和帮助演示等。

7、clc命令和clear命令的区别是 clc清除命令窗口所有显示内容;Clear清除所有显示的变量 .8、命令窗口中的type命令的功能为显示文件的内容 .9、matlab7.3提供了三种程序调试的工具,包括直接检测调试、专用调试命令和使用 M文件编辑/调试器。

10、matlab除了最常用的主函数和子函数外,还提供了嵌套函数、私有函数、重载函数和匿名函数。

11、在matlab7.3中,创建句柄图形对象的命令格式为____________h_obj=funname(‘PropertyName’,PropertyValue,……)_12、计算5*e3*|cos175°|语句为 5*exp(3)*abs(cos(175*pi/180)).13、创建随机矩阵的指令用rand,创建稀疏矩阵用sparse14、为图形添加网格使用grid on,使用legend命令添加图例。

1、MATLAB常用操作界面包括命令窗口、工作空间窗口(浏览器)、命令历史窗口、当前目录窗口、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。

2、MATLABInf或inf表示无穷大、NaN或nan表示不是一个数、nargout表示函数输出宗量数目。

3、MATLAB中逗号主要用作要显示计算结果的指令与其后指令的分隔;用作输入量与输入量之间的分隔符;用作数组元素分隔符号。

matlab习题及答案

matlab习题及答案

matlab习题及答案《Matlab习题及答案:提升编程技能,解决实际问题》Matlab是一种强大的数值计算和数据分析工具,它被广泛应用于工程、科学和其他领域的计算和模拟。

为了帮助大家提升编程技能,解决实际问题,我们为大家准备了一些Matlab习题及答案,希望能够帮助大家更好地掌握Matlab的使用。

1. 习题一:编写一个Matlab程序,计算斐波那契数列的前20个数字,并将结果打印出来。

答案:下面是一个简单的Matlab程序,用于计算斐波那契数列的前20个数字。

```matlaba = 0;b = 1;fib = zeros(1, 20);fib(1) = a;fib(2) = b;for i = 3:20fib(i) = fib(i-1) + fib(i-2);enddisp(fib);```2. 习题二:编写一个Matlab程序,求解一个二次方程ax^2 + bx + c = 0的根。

答案:下面是一个简单的Matlab程序,用于求解二次方程的根。

```matlaba = 1;b = -3;c = 2;delta = b^2 - 4*a*c;if delta > 0x1 = (-b + sqrt(delta))/(2*a);x2 = (-b - sqrt(delta))/(2*a);disp(['The roots are ', num2str(x1), ' and ', num2str(x2)]);elseif delta == 0x = -b/(2*a);disp(['The root is ', num2str(x)]);elsedisp('The equation has no real roots');end```通过以上两个习题及答案的示例,我们可以看到Matlab的强大功能和灵活性。

通过练习这些习题,我们可以更好地掌握Matlab的基本语法和常用函数,从而在实际问题中更快更准确地解决数值计算和数据分析的挑战。

大学专业试题-Matlab期末考试及答案

大学专业试题-Matlab期末考试及答案

大学专业试题-Matlab期末考试及答案一、填空题(一题3分,共15分)1、标点符号可以使命令行不显示运算结果。

答案:%2、x为0〜4,步长为0.1pi的向量,使用命令创建。

答案:x=0:0.1*pi:4。

3、输入矩阵A=[1 2 3;7 -5 8;9-1-7],使用全下标方式用A(2,2)取出元素“-5 ”,使用单下标方式用取出元素“-5 ”。

答案:A (5)。

4、在while表达式,语句体,End循环语句中,表达式的值__时表示循环条件为真,体语句将被执行,否则跳出该循环语句。

答案:非零。

5、要从键盘读入一个字符串并赋值给变量x,且给出提示“Hello",应使用命令—答案:x=input(‘Hello,;s')b二、选择题(一题3分,共15分)1、下列表示可以作为MATLAB的变量的是(D )A. abcd-2B. xyz_2#C. @hD. X_1_a2、如果x=1: 2 : 8,则U x(1)和x(4)分别是(B )A. 1, 8B. 1,7C. 2,8D. 2,73、指出下列错误的指令(B)。

A.symsa b;B. symsa, b;C.syms('a',’b');D. syms('a','b','positive');4、下列哪条指令是求矩阵的行列式的值(C)。

A .inv B. diag C. det D.eig5、清空Matlab工作空间内所有变量的指令是(C)。

A. clcB.clsC.clearD. clf三、程序分析题(一题10分,共20分)1、分析下面程序运行后s1,n1,s2,n2,m的值。

s1=0;s2=0;n1=0;n2=0;x=[1,-4,-8,3,10,-9,7,-3,10, 8,-5,-2,2,0 ]; m=length(x); fori=1:mif x(i)<0s1=s1+x(i); n1=n1+1; elses2=s2+x(i); n2=n2+1;end ends1,n1,s2,n2,m请回答s1,n1,s2,n2,m的结果。

matlab习题与答案

matlab习题与答案

matlab习题与答案
MATLAB习题与答案
MATLAB是一种强大的数学软件,广泛应用于工程、科学和金融等领域。

通过MATLAB,用户可以进行数据分析、图像处理、模拟建模等多种操作。

为了帮
助大家更好地掌握MATLAB的应用,我们为大家准备了一些习题与答案,希望
能够帮助大家更好地理解和掌握MATLAB的使用。

习题一:编写一个MATLAB程序,实现对给定矩阵的转置操作。

解答:可以使用MATLAB中的transpose函数来实现矩阵的转置操作。

例如,
对于一个3x3的矩阵A,可以使用以下代码实现转置操作:
A = [1 2 3; 4 5 6; 7 8 9];
B = transpose(A);
习题二:编写一个MATLAB程序,实现对给定矩阵的逆矩阵计算。

解答:可以使用MATLAB中的inv函数来实现对矩阵的逆矩阵计算。

例如,对
于一个3x3的矩阵A,可以使用以下代码实现逆矩阵计算:
A = [1 2 3; 4 5 6; 7 8 9];
B = inv(A);
习题三:编写一个MATLAB程序,实现对给定矩阵的特征值和特征向量计算。

解答:可以使用MATLAB中的eig函数来实现对矩阵的特征值和特征向量计算。

例如,对于一个3x3的矩阵A,可以使用以下代码实现特征值和特征向量计算:A = [1 2 3; 4 5 6; 7 8 9];
[V, D] = eig(A);
通过以上习题与答案的学习,相信大家对MATLAB的应用已经有了更深入的了
解。

希望大家能够多加练习,不断提升自己的MATLAB技能,为今后的工作和学习打下坚实的基础。

matlab练习题及答案详解(附程序)

matlab练习题及答案详解(附程序)

Matlab练习题及答案详解一、基础题1、下表为1)2) 把任意两点距离的表中,自己到自己的距离,转变成无穷大clcclearclose alldata=xlsread('ti1.xls');%从excel里导入数据x=data(1,:);%将data里第一行的所有列赋值给xy=data(2,:);%将data里第二行的所有列赋值给xn=length(x);%表x的长度dis=zeros(n,n);%对距离表进行初始化for i=1:nfor j=1:ndis(i,j)=sqrt((x(i)-x(j))^2+(y(i)-y(j))^2);%平面坐标距离公式endenddis(dis==0)=inf;%将距离表中为0的数值,变成无穷大redis=dis;2、按要求步骤,操作下表要求:1) 对每列进行[0,1]区间化'(min())/(max min())=--;x x x x2) 把区间化后的表的右边3列,连接在左边3列下边,构成16行3列的表;3) 把16行3列进行转置,得到3行16列的表。

然后对列进行操作,把3行16列的表变成一列,后转置成一行,得到最终的结果。

clcclearclose allx=load('ti2.txt');%从txt里导入数据big=max(x);small=min(x);%算出每列的最大最小值[m,n]=size(x);%表x的行和列的大小newx1=zeros(m,n);%对newx1进行初始化,大小和初始x一样大for i=1:nnewx1(:,i)=(x(:,i)-small(i))./(big(i)-small(i));endnewx2=zeros(2*m,n/2);%对最新的表进行初始化大小为,行为newx1的2倍,列为一半newx2(1:m,1:n/2)=newx1(1:m,1:n/2);%把左边3列不操作的值,直接赋值给newx2上边newx2(m+1:end,1:n/2)=newx1(1:m,n/2+1:end);%把右边的3列,赋值给newx2下边[p,q]=size(newx2);%表newx2的行和列的大小 newx3=zeros(p*q,1);%对newx3进行初始化 for j=1:qnewx3((j-1)*p+1:j*p,1)=newx2(:,q);%对newx3进行操作 end% newx3=reshape(newx2,[],1); renewx=newx3';%最终的结果3、数值运算1)用matlab 求下列式子极限(a) lim x → (b) 0x →2)用matlab 求下列函数的导数(a)22sin (1)y x =+ (b) arccos()(,)x f x y ye =3)用matlab 求下列式子的定积分(a) 4⎰(b) 312-⎰⎰clc clear %===求极限 %====3.1.a=== syms xy=(x^(1/2)-8)/(x^(1/3)-4);re1a=limit(y,x,64)%====3.1.b===syms xy=((x^2-2*x+4)^(1/2)-2)/x;re1b=limit(y,x,0)%===求导数%====3.2.a===syms xf=(sin(x^2+1))^2;re2a=diff(f,x)%对x求导%====3.2.b===syms x yf=y*exp(acos(x));re2bx=diff(f,x)%对x求偏导re2by=diff(f,y)%对y求偏导%===求定积分===%====3.3.a===syms xre3a=int((x+2)/(2*x+1)^(1/2),x,0,4)%一重积分%====3.3.b===syms x yre3b=int(int(y/(x^2-1),x,-2,-sqrt(2)),y,1,3)%二重积分二、提高题1、画一个正五边形,边长自定。

MatLab考试题题库(必做题)(带答案)

MatLab考试题题库(必做题)(带答案)

MatLab考试题题库(必做题)(带答案)一,1.请登陆美国 MathWorks 公司的 (.mathworks.),查看看现在大概有多少本 MATLAB-based books (以 MATLAB 为基本软件,来说明各个专业领域的教科书或工具书)。

哪一个领域的MATLAB-based books 最多?中文书共有几本?答:1612本,数学方面的最多,中文书共有37本。

2.请在 MATLAB中直接输入下列常数,看它们的值是多少:a.ib.jc.epsd.infe.nanf.pig.realmaxh.realmin依次解为:ans = 0 + 1.0000i ans = 0 + 1.0000i ans =2.2204e-016 ans =Inf ans = NaN ans =3.1416 ans =1.7977e+308 ans =2.2251e-3083.试写一函数 regPolygon(n),其功能为画出一个圆心在 (0, 0)、半径为 1 的圆,并在圆画出一个接正 n 边形,其中一顶点位于 (0, 1)。

例如 regPolygon(8) 可以画出如下之正八边型:解:新建regPolygon.m文件如下:function y=regPolyfon(n)n=8;%要画的n边形R=1; %圆的半径t=0:0.01:2*pi;x=R*cos(t);y=R*sin(t);m=linspace(pi/2,5/2*pi,n+1);xz=R*cos(m);yz=R*sin(m);hold onplot(x,y,xz,yz);axis 'equal';4.一条参数式的曲线可由下列方程式表示:x = sin(t), y = 1 - cos(t) + t/10当 t 由 0 变化到 4*pi 时,请写一个 MATLAB 的脚本 plotParam.m,画出此曲线在 XY 平面的轨迹。

解:新建plotParam.m:t = linspace(0, 4*pi);x = sin(t);y = 1-cos(t)+t/10;plot(x, y, '-o');5.当一个小圆轮沿着一条曲线行进时,轮缘任一点的轨迹就会产生变化丰富的摆线。

Matlab考试题库+答案

Matlab考试题库+答案

Matlab考试题库+答案一、选择题共10小题二、填空题共10空三、看程序填空四、编程题 3题填空题(计算部分)1、标点符号; _______可以使命令行不显示运算结果,%——用来表示该行为注释行。

2、x为0~4pi,步长为0.1pi的向量,使用命令_______创建。

x=0:0.1*pi:4*pi3、输入矩阵A=,使用全下标方式用A(2,2) 取出元素“-5”,使用单下标方式用_______取出元素“-5”。

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

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

6. 设x是一维数组,x的倒数第3个元素表示为_______;设y为二维数组,要删除y的第34行和48列,可使用命令_______; _______;x(_end-2_)y(34,:)=[]y(:,48)=[]7. 将变量x以Ascii文本格式存储到文件fname.txt,应使用命令_________ _;save _x8. 在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.^Cdet(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考试题库及答案(教师出卷参考专用)

Matlab考试题库及答案(教师出卷参考专用)一、选择题1.以下哪个函数用于在Matlab中创建一个图形窗口?A. figureB. plotC. graphD. window答案:A2.在Matlab中,以下哪个选项可以用来定义一个矩阵?A. A = [1 2 3; 4 5 6]B. A = (1, 2, 3, 4, 5, 6)C. A = {1, 2, 3, 4, 5, 6}D. A = 1 2 3; 4 5 6答案:A3.以下哪个函数用于求解线性方程组Ax=b?A. solveB. linsolveC. solve(A, b)D. linsolve(A, b)答案:D4.在Matlab中,如何计算矩阵A和矩阵B的乘积?A. A BB. A \ BC. A . BD. A .\ B答案:A5.以下哪个函数用于在Matlab中绘制三维散点图?A. scatterB. scatter3C. plot3D. bar3答案:B二、填空题1.在Matlab中,要创建一个名为"myfig"的图形窗口,可以使用______函数。

答案:figure('Name', 'myfig')2.在Matlab中,要计算矩阵A的行列式,可以使用______函数。

答案:det(A)3.在Matlab中,若要计算变量x的平方,可以使用______运算符。

答案:.^24.在Matlab中,若要计算矩阵A的逆矩阵,可以使用______函数。

答案:inv(A)5.在Matlab中,要绘制一个正弦波形,可以使用______函数。

答案:plot(sin(x))三、判断题1.在Matlab中,矩阵的索引从1开始计数。

()答案:正确2.在Matlab中,可以使用逻辑运算符"&&"和"||"。

()答案:错误3.在Matlab中,矩阵乘法满足交换律。

MATLAB习题及答案

MATLAB习题及答案

填空题1. MATLAB于1984年由美国Mathworks公司推出,其后每年更新(两次。

2. MATLAB是一种以(矩阵)运算为基础的交互式程序设计语言。

3. MATLAB具有卓越的数值计算能力和符号计算、文字处理、可视化建模仿真和实时控制等众多功能,其每个变量代表一个(矩阵),每个元素都看作(复数)。

4.通过命令(help)、(lookfor),可以查找所有命令或函数的使用方法。

5.执行语句a=1:2:10,得到的一维数组是(1 3 5 7 9).6.执行语句b=linspace(1,10,10)后,一维数组b包含(10)个元素,最大值是10)7.函数rem()的功能是取(余)数。

8.若p=[1 0 0;1 1 0],则p|〜p=([1 1 1;1 1 1]).(注:填空时请用本题的p的方式表示结果)9.若p=[1 0 0;1 1 0],则all(p)=([1 0 0]).10.矩阵的加减运算,要求相加减的矩阵阶数相同。

若A=[1 2 3 4;2 3 1 8],则执行语句:[n,m]=size(A),则n=(2 ),m=(4 ).11.对于一维矩阵,求其长度的函数是(length()).12.数组和数组之间的运算,尤其是对于乘除运算和乘方运算,如果采用点方式进行计算,表明是数组的(元素)之间的运算关系。

13.求矩阵运算A*B时,要求在维度上,A的(列)数与B的(行)数相等。

二、判断题1.MATLAB只有一种数据类型,一种标准的输入输出语句,不需编译,可直接运行。

(对2.MATLAB的特殊常量是一些预选定义好的数值变量。

(对3.MATLAB变量名不区分大小写。

(错4.i是特殊常量。

(对5.NAN是非数。

(对6.MATLAB中所有的变量都表示一个矩阵或一个向量。

(对7.MATLAB中变量不需要先定义后使用,会自动根据实际赋值的类型对变量类型进行定义。

(对8.clc命令可以从内存中删除一个、多个和所有变量。

MATLAB考试试题及答案

MATLAB考试试题及答案

MATLAB考试试题及答案一、选择题(每题5分,共25分)1. 在MATLAB中,下列哪个命令用于创建一个行向量?A. v = [1; 2; 3]B. v = [1 2 3]C. v = [1, 2, 3]D. v = (1, 2, 3)答案:B2. 在MATLAB中,下列哪个命令用于计算矩阵A的行列式?A. det(A)B. det(A')C. det(inv(A))D. det(A^2)答案:A3. 在MATLAB中,下列哪个命令用于计算矩阵A的逆?A. inv(A)B. A^(-1)C. pinv(A)D. A\B答案:A4. 在MATLAB中,下列哪个命令用于求解线性方程组Ax= b?A. A\bB. A/BC. B/AD. A^-1b答案:A5. 在MATLAB中,下列哪个命令用于绘制二维图形?A. plot(x, y)B. scatter(x, y)C. bar(x, y)D. pie(x, y)答案:A二、填空题(每题5分,共25分)6. 在MATLAB中,可以使用______命令创建一个等差数列。

答案:linspace7. 在MATLAB中,可以使用______命令创建一个等比数列。

答案:logspace8. 在MATLAB中,可以使用______命令计算矩阵A的特征值。

答案:eig(A)9. 在MATLAB中,可以使用______命令计算矩阵A的特征向量。

答案:eigenvector(A)10. 在MATLAB中,可以使用______命令计算矩阵A的奇异值。

答案:svd(A)三、解答题(每题25分,共75分)11. 编写MATLAB程序,求解以下线性方程组:2x + 3y - z = 1x - y + 2z = 03x + 2y - 4z = -3答案:```A = [2 3 -1; 1 -1 2; 3 2 -4];b = [1; 0; -3];x = A\b;disp('解为:');disp(x);```12. 编写MATLAB程序,绘制以下函数的图形:y = sin(x) + cos(x),x ∈ [0, 2π]答案:```x = linspace(0, 2pi, 100);y = sin(x) + cos(x);plot(x, y);title('y = sin(x) + cos(x)');xlabel('x');ylabel('y');grid on;```13. 编写MATLAB程序,计算以下矩阵的特征值和特征向量:A = [1 2 3; 4 5 6; 7 8 9]答案:```A = [1 2 3; 4 5 6; 7 8 9];[V, D] = eig(A);disp('特征值:');disp(diag(D));disp('特征向量:');disp(V);```14. 编写MATLAB程序,使用牛顿迭代法求解方程f(x) = x^3 - 4x + 2 = 0在x = 1附近的根。

(完整版)matlab经典习题及解答

(完整版)matlab经典习题及解答

(完整版)matlab经典习题及解答第1章 MATLAB 概论1.1 与其他计算机语⾔相⽐较,MATLAB 语⾔突出的特点是什么?MATLAB 具有功能强⼤、使⽤⽅便、输⼊简捷、库函数丰富、开放性强等特点。

1.2 MATLAB 系统由那些部分组成?MATLAB 系统主要由开发环境、MATLAB 数学函数库、MATLAB 语⾔、图形功能和应⽤程序接⼝五个部分组成。

1.4 MATLAB 操作桌⾯有⼏个窗⼝?如何使某个窗⼝脱离桌⾯成为独⽴窗⼝?⼜如何将脱离出去的窗⼝重新放置到桌⾯上?在MATLAB 操作桌⾯上有五个窗⼝,在每个窗⼝的右上⾓有两个⼩按钮,⼀个是关闭窗⼝的Close 按钮,⼀个是可以使窗⼝成为独⽴窗⼝的Undock 按钮,点击Undock 按钮就可以使该窗⼝脱离桌⾯成为独⽴窗⼝,在独⽴窗⼝的view 菜单中选择Dock ……菜单项就可以将独⽴的窗⼝重新防⽌的桌⾯上。

1.5 如何启动M ⽂件编辑/调试器?在操作桌⾯上选择“建⽴新⽂件”或“打开⽂件”操作时,M ⽂件编辑/调试器将被启动。

在命令窗⼝中键⼊edit 命令时也可以启动M ⽂件编辑/调试器。

1.6 存储在⼯作空间中的数组能编辑吗?如何操作?存储在⼯作空间的数组可以通过数组编辑器进⾏编辑:在⼯作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输⼊修改内容即可。

1.7 命令历史窗⼝除了可以观察前⾯键⼊的命令外,还有什么⽤途?命令历史窗⼝除了⽤于查询以前键⼊的命令外,还可以直接执⾏命令历史窗⼝中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M ⽂件中。

1.8 如何设置当前⽬录和搜索路径,在当前⽬录上的⽂件和在搜索路径上的⽂件有什么区别?当前⽬录可以在当前⽬录浏览器窗⼝左上⽅的输⼊栏中设置,搜索路径可以通过选择操作桌⾯的file 菜单中的Set Path 菜单项来完成。

在没有特别说明的情况下,只有当前⽬录和搜索路径上的函数和⽂件能够被MATLAB 运⾏和调⽤,如果在当前⽬录上有与搜索路径上相同⽂件名的⽂件时则优先执⾏当前⽬录上的⽂件,如果没有特别说明,数据⽂件将存储在当前⽬录上。

matlab期末试题库及答案

matlab期末试题库及答案

matlab期末试题库及答案一、选择题1. 下列关于MATLAB的说法中,错误的是:A. MATLAB是一种高级技术语言和环境B. MATLAB可以进行数值计算和数据可视化C. MATLAB支持矩阵运算和线性代数操作D. MATLAB无法处理大规模数据答案:D2. 在MATLAB中,下列哪个命令用于清除当前工作空间的变量:A. clearB. deleteC. closeD. refresh答案:A3. MATLAB中,用于创建行向量的命令是:A. rowvecB. linerowC. linspaceD. colon答案:D4. 在MATLAB中,如何计算数组a的平均值?A. mean(a)B. average(a)C. avg(a)D. meanval(a)答案:A5. 下列哪个命令用于将MATLAB中的向量a按从小到大排序?A. sort(a)B. order(a)C. arrange(a)D. rank(a)答案:A二、填空题1. MATLAB中表示pi的符号是______。

答案:pi2. MATLAB中用于计算2的10次方的命令是______。

答案:2^103. MATLAB中通过命令______可以生成从1到10的整数向量。

答案:1:104. MATLAB中用于求解线性方程组的命令是______。

答案:solve5. MATLAB中用于生成随机数的命令是______。

答案:rand三、计算题1. 计算下列矩阵的乘积:A = [1 2 3; 4 5 6; 7 8 9]B = [9 8 7; 6 5 4; 3 2 1]答案:C = A * B2. 解下列线性方程组:2x + y = 43x - y = 2答案:syms x yeq1 = 2*x + y == 4;eq2 = 3*x - y == 2;sol = solve([eq1, eq2], [x, y]);四、应用题题目:某电商公司的销售数据如下,请使用MATLAB进行分析和可视化。

Matlab考试卷试题库题集答案.doc

Matlab考试卷试题库题集答案.doc

一、选择题共 10 小题二、填空题共 10 空三、看程序填空四、编程题 3 题填空题(计算部分)1、标点符号 ; _______可以使命令行不显示运算结果,%——用来表示该行为注释行。

2、x 为 0 ~4pi,步长为0.1pi的向量,使用命令_______创建。

x=0:0.1*pi:4*pi3、输入矩阵A= ,使用全下标方式用A(2,2) 取出元素“-5 ”,使用单下标方式用_______取出元素“-5 ”。

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

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

M函数文6.设 x 是一维数组, x 的倒数第 3 个元素表示为 _______;设 y 为二维数组,要删除 y 的第 34 行和 48 列,可使用命令; _______;x(_end-2_)y(34,:)=[]y(:,48)=[]7.将变量 x 以 Ascii 文本格式存储到文件 fname.txt,应使用命令 _________ _;save _x8.在 while 表达式 , 语句体 , End 循环语句中,表达式的值 __ __时表示循环条件为真,语句体将被执行,否则跳出该循环语句;非零9.要从键盘读入一个字符串并赋值给变量x,且给出提示“ Who is she?”,应使用命令 _________;x=input( ‘ Who is she? ’ , ’ s’ )_.设和B= 和 C= 均为 m*n 矩阵,且存在于 WorkSpace10A=中,要产生矩阵 D= ,可用命令 ________ _,计算可用命令 ________;D=(A-C)/B.^Cdet(inv(A ’ *B) 11.在 MATLAB 命令窗口中的“>>”标志为 MATLAB 的_______ 提示符,“│”标志为 _______提示符。

Matlab考试题库答案(教师出卷参考专用)

Matlab考试题库答案(教师出卷参考专用)
ans=[0 1 1;1 1 0] ans= [0 2.25 2;1 0.6 NaN] 26. 产生 4 阶全 0 方阵的命令为_______; 产生 3 阶全 1 方阵的命令为。 zeros(4) ones(3) 27. A=rand(2,5);b=size(A);c=length(A);则 b 和 c 的值分别为_______ 。 2 5和 5 28. 用 if 判断语句判断 80≥ x >60,在 MATLAB 中 if 语言后的判断应写为 _______。 if x<=80 & x>60 29.为了使两个 plot 的图形在同一个坐标显示,可以使用_______命令进行图形 保持;可以使用_______命令为图形添加网格。
1111 1111 1111 1111
>> rand(4) ans =
0.8147 0.9058 0.1270 0.9134
0.6324 0.0975 0.2785 0.5469
0.9575 0.9649 0.1576 0.9706
0.9572 0.4854 0.8003 0.1419
CCaDb
16.求解线性方程组 Ax=b,当 det(A)≠0 时,方程的解是().
a=input('a=?');
b=input('b=?');
c=input('c=?');
d=b*b-4*a*c;
x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)];
[1 2 3;1 4 9;0 7 27] 24. A=[4,15,-45,10,6;56,0,17,-45,0]; find(A>=10 & A<=20)=___ __________.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

操作方法:首先点击File —New —M-File ,输入相应代码,然后点击运行按钮即可。

P1.已知两序列[]0.8{[][5]}nx n u n u n =--,[]{1,1,1,1,1}h n =计算两序列的卷积并绘制其波形。

%function a1 for i=1:5x(i)=0.8^(i-1); endh=[1 1 1 1 1]; y=conv(x,h) m=0:8;stem(m,y,'filled')P2。

已知复指数序列(1.52)[] 1.2j n x n e +=,绘制20点该序列的实部和虚部。

n=0:19;x=1.2*exp((1.5+j*2)*n); subplot(211); stem(n,real(x)); ylabel('real part'); xlabel('n'); legend('x[n]'); subplot(212); stem(n,imag(x)); ylabel('imag part'); xlabel('n'); legend('x[n]');P3.编写长度为5的中值滤波器程序。

原始未受干扰的序列为:s[n]=3[n(0.5) ]n ,加性噪声信号d[n]为随机序列,幅度0.4,分别绘制长度为40的受干扰序列,以及中值滤波器的输出。

% Program 2_5% Illustration of Median Filtering N = 5; R = 40;a = 0.8*rand(1,R)-0.4;b = round(a); % Generate impulse noise m = 0:R-1;s =3*m.*(0.5.^m); % Generate signalx = s + b; % Impulse noise corrupted signal y = medfilt1(x,N); % Median filtering subplot(2,1,1) stem(m,x);xlabel('n');ylabel('Amplitude');title('Impulse Noise Corrupted Signal'); subplot(2,1,2) stem(m,y);xlabel('n');ylabel('Amplitude'); title('Output of Median Filter'); P4. 已知序列x1[n]={2.2,3,1.5,4.2,1.8}, x2[n]= {0.8,1,1.6,0.8},x[n]=x1[n]∗x2[n] (卷积),分别绘制序列x1[n] ,x2[n]和x [n]的波形。

x1=[2.3,3,1.5,4.2,1.8]; x2=[0.8,1,1.6,0.8]; z=conv(x1,x2); t=0:1:4;subplot(311) stem(t,x1); ylabel('x1'); pause; t=0:1:3;subplot(312) stem(t,x2); ylabel('x2'); pause; w=size(z);n=0:1:(w(2)-1); subplot(313) stem(n,z); ylabel('z');P5.编写4点滑动平均滤波器程序。

原始未受干扰的序列为:s[n]=3[n(0.8) ]n , 加性噪声信号d[n]为随机序列,幅度0.6,受干扰的序列为:x[n]= s[n]+ d[n],分别绘制长度为40的原始未受干扰的序列,噪声序列和受干扰序列,以及滑动平均滤波器的输出。

% Program 2_4% Signal Smoothing by a Moving-Average Filter R = 40;d = 6/5*(rand(1,R)-0.5); m = 0:1:R-1;s =3.*m.*0.9.^m; x = s + d;plot(m,d,'r-',m,s,'b--',m,x,'g:')xlabel('Time index n'); ylabel('Amplitude') legend('d[n]','s[n]','x[n]'); pauseb = ones(4,1)/4; y = filter(b,1,x);plot(m,s,'r-',m,y,'b--') legend('s[n]','y[n]');xlabel ('Time index n');ylabel('Amplitude')P6.序列[]0.8cos(0.75){[][8]}nx n n u n u n π=⋅--, 分别绘制下列序列的波形图: (1)[][2]y n x n =-+; (2)[]2[][1]z n x n x n =+- (3)[][2]w n x n = n=0:1:7;x=0.8.^n.*cos(0.75*pi*n); subplot(221); stem(n,x,'.'); grid;title('x[n]') y=fliplr(x);ny=fliplr(-(n-2)); subplot(222); stem(ny,y,'.'); grid;title('y[n]=x[-n+2]') x1=2*x; x2=[x1 0]; x3=[0 x]; y1=x2+x3; subplot(223);stem([0:8],y1,'.'); grid;title('z[n]=2x[n]+x[n-1]') for i=1:1:4w(i)=x(2*i-1); endsubplot(224);stem([0:3],w,'.'); grid;title('w[n]=x[2n]')P7.序列[]0.75{[][3]}x n n u n u n =--,分别绘制其偶序列分量[][]cs y n x n =和圆周偶序列分量[][]ccs z n x n =的波形图: n=0:1:2; x=0.75*n; xf=fliplr(x);z=zeros(1,length(n)-1); y1=[z x]; y2=[xf z];y=0.5*(y1+conj(y2)); subplot(211);stem([-2:2],y,'.'); title('xcs[n]')subplot(212) X=fft(x,3); Xre=real(X); xccs=ifft(Xre);stem([0:2],xccs,'.'); title('xccs[n]')P8.设原始未受干扰的序列为:s[n]=3[n(0.5) ]n ,加性噪声信号d[n]为随机序列,幅度0.4,,对该信号测量50次并取样本的整体平均以去除噪声,分别绘制某受干扰的长度为40的测量序列,以及整体平均滤波的输出。

% Program 2_1% Generation of the ensemble average R = 40; m = 0:R-1;s = 3*m.*0.5.^m; % Generate the uncorrupted signal d = 0.8*(rand(1,R)-0.5); % Generate the random noise x1 = s+d;xlabel('Time index n');ylabel('Amplitude'); title('Noise'); subplot(211); stem(m,x1,'b','.')for n = 1:40 d = 0.8*(rand(1,R)-0.5); x = s + d; x1 = x1 + x; endx1 = x1/40; subplot(212); stem(m,x1,'c','.');xlabel('Time index n');ylabel('Amplitude'); title('Ensemble average'); P9.绘制指数序列[]0.8[]nx n u n =的幅度谱和相位谱曲线。

% Program 3_1% Discrete-Time Fourier Transform Computation % Read in the desired number of frequency samples k = 1000;% Read in the numerator and denominator coefficients syms n;d=ztrans(0.8.^n); [e,f]=numden(d); g=sym2poly(e); h=sym2poly(f);n=0:1000;num=0.8.^n;den=1;% Compute the frequency response w = 0:pi/(k-1):pi;h = freqz(num, den, w);% Plot the frequency response subplot(211)plot(w/pi,abs(h));gridtitle('Magnitude Spectrum')xlabel('\omega/\pi'); ylabel('Magnitude') subplot(212)plot(w/pi,angle(h));grid title('Phase Spectrum')xlabel('\omega/\pi'); ylabel('Phase, radians')P10.绘制矩形序列0.5, 010[]0, n x n ≤≤⎧=⎨⎩其它的幅度谱和相位谱曲线。

x=0.5*ones(1,11);k = 512;w = 0:pi/(k-1):pi;h = freqz(x, 1, w);% Plot the frequency responsesubplot(2,1,1)plot(w/pi,abs(h));gridtitle('Magnitude Spectrum')xlabel('\omega/\pi'); ylabel('Magnitude')subplot(2,1,2)plot(w/pi,angle(h));gridtitle('Phase Spectrum')xlabel('\omega/\pi'); ylabel('Phase, radians')P11.已知滤波器的差分方程和输入信号分别为:y[n]= − 6.76195x[n]+13.456335x[n−1] − 6.76195x[n− 2]x[n] =[cos(0.1n)+2cos(0.4n)]u[n]绘制该系统的输入序列和输出序列。

相关文档
最新文档