matlabl程序设计与应用(刘卫国)课后答案
《MATLAB_程序设计与应用》刘卫国高等教育出版社-第4章课后答案
第四章1.a=input('请输入一个4位数:');while (a<1000|a>9999)a=input('输入错误,请重新输入一个4位数:'); endb=fix(a/1000);c=rem(fix(a/100),10);d=rem(fix(a/10),10);e=rem(a,10);b=b+7;c=c+7;d=d+7;e=e+7;b=rem(b,10);c=rem(c,10);d=rem(c,10);e=rem(e,10);g=b;b=d;d=g;g=c;c=e;e=g;a=1000*b+100*c+10*d+e;disp(['加密后:',num2str(a)])2.逻辑表达式法:a=input('请输入a: ');b=input('请输入b: ');c=input('请输入c: ');x=0.5:1:5.5;x1=(x>=0.5&x<1.5);x2=(x>=1.5&x<3.5);x3=(x>=3.5&x<=5.5);y1=a.*(x.^2)+b.*x+c;y2=a*(sin(b)^c)+x;y3=log(abs(b+c./x));y=y1.*x1+y1.*x2+y3.*x3; disp(y)if语句法:a=input('请输入a: ');b=input('请输入b: ');c=input('请输入c: ');for x=0.5:1:5.5if x>=0.5 & x<1.5y=a.*(x.^2)+b.*x+celseif x>=1.5 & x<3.5y=a*(sin(b)^c)+xelseif x>=3.5 & x<5.5y=log(abs(b+c./x))endendswitch语句法:a=input('请输入a: ');b=input('请输入b: ');c=input('请输入c: ');for x=0.5:1:5.5switch floor(x/0.5)case {1,2}y=a.*(x.^2)+b.*x+c;case {3,4,5,6}y=a*(sin(b)^c)+x;case {7,8,9,10}y=log(abs(b+c./x)); enddisp(y)end3.x=fix(rand(1,20)*89)+10;x1=mean(x);n=find(rem(x,2)==0 & x<x1);disp(['小于平均数的偶数是:',num2str(x(n))]);4.(1)A=input('请输入20个数的一个行向量:');a=A(1);b=A(1);for m=Aif a>=ma=m;elseif b<=mb=m;endenddisp(['最小数是:',num2str(a)])disp(['最大数是:',num2str(b)])(2)A=input('请输入20个数的一个行向量:'); maxval=max(A)minval=min(A)5.s=0;for a=0:63c=2^a;s=s+c;enddisp(['2的0次方到63次方的和是:',num2str(s)])k=0:63n=2.^ks=sum(n)6.(1)sum1=0;for n=1:100x=(-1)^(n+1)*(1/n);sum1=sum1+x;enddisp(['当n取100时: sum=',num2str(sum1)])sum2=0;for n=1:1000x=(-1)^(n+1)*(1/n);sum2=sum2+x;enddisp(['当n取1000时: sum=',num2str(sum2)])sum3=0;for n=1:10000x=(-1)^(n+1)*(1/n);sum3=sum3+x;enddisp(['当n取10000时:sum=',num2str(sum3)])(2)sum1=0;n1=0;for n=1:2:100x=(-1)^n1*(1/n);sum1=sum1+x;n1=n1+1;enddisp(['当n取100时: sum=',num2str(sum1)])sum2=0;n2=0;for n=1:2:1000x=(-1)^n2*(1/n);sum2=sum2+x;n2=n2+1;enddisp(['当n取1000时: sum=',num2str(sum2)])sum3=0;n3=0;for n=1:2:10000x=(-1)^n3*(1/n);sum3=sum3+x;n3=n3+1;enddisp(['当n取10000时:sum=',num2str(sum3)])(3)sum1=0;for n=1:100x=1/(4^n);sum1=sum1+x;enddisp(['当n取100时: sum=',num2str(sum1)])sum2=0;for n=1:1000x=1/(4^n);sum2=sum2+x;enddisp(['当n取1000时: sum=',num2str(sum2)])sum3=0;for n=1:10000x=1/(4^n);sum3=sum3+x;enddisp(['当n取10000时:sum=',num2str(sum3)])(4)sum1=1;for n=1:100x=4*n*n/(2*n-1)/(2*n+1);sum1=sum1*x;enddisp(['当n取100时: sum=',num2str(sum1)])sum2=1;for n=1:1000x=4*n*n/(2*n-1)/(2*n+1);sum2=sum2*x;enddisp(['当n取1000时: sum=',num2str(sum2)])sum3=1;for n=1:10000x=4*n*n/(2*n-1)/(2*n+1);sum3=sum3*x;enddisp(['当n取10000时:sum=',num2str(sum3)])7.函数文件function f=fibnacci(n)if n==1 | n==2f=1;elsef=fibnacci(n-1)+fibnacci(n-2);end命令文件:shulie=[];for k=1:nshulie=[shulie fibnacci(k)];endshulie8.function [f1,f2]=juzhenji(x1,x2)f1=x1*x2;f2=x1.*x2;命令文件:clear alla=input('请输入一个矩阵:');b=input('请再输入一个矩阵:(注意:两矩阵要可以相乘)'); [f1,f2]=juzhenji(a,b);disp(f1)disp(f2)9.function sum=qiuhe(n,m)if n<=1sum=0;elsesum=n^m+qiuhe(n-1,m);end命令文件:clear ally=qiuhe(100,1)+qiuhe(50,2)+qiuhe(10,-1);disp(y)10.s=0;a=[12,13,14;15,16,17;18,19,20;21,22,23];for k=afor j=1:4if rem(k(j),2)~=0 s=s+k(j);endendendss =108(2)global xx=1:2:5;y=2:2:6;sub(y);xyfunction fun=sub(z) global xz=3*x;x=x+z;x =4 12 20 y =2 4 6。
MATLAB程序设计与应用 刘卫国主编 高等教育出版社课后答案
y='A'; elseif x>=80
y='B'; elseif x>=70
y='C'; elseif x>=60
y='D'; else
y='E'; end y
3:
x=input('请输入工作小时数');
天天learn
if 84*x-700<=0 y=0;
1、 A=rand(100,300)
(1) mean(A) std(A,0,1);
(2) [B,C]=max(A) [E,F]=max(B)
[B1,C1]=min(A)
(3) Length(find(A>0.5))/30000
[E1,F2]=min(B1)
2、 P=45+(95-45)*rand(100,5) (1) [Y,U]=max(P) [Y1,U1]=min(P) (2) mean(P) std(P,0,1) (3) K=sum(P,2) [E,F]=max(K) [E1,F1]=min(K) (4) [zcj,xsxh]=-sort(-K,1)
break end end format long y=y-1/(2*k-1) k=k-1 3:a=input('a='); b=input('b='); n=1; x0=1; x1=a/(x0+b); while abs(x0-x1)>=10^(-5)|n<=500 k=a/(x1+b); x0=x1; x1=k; n=n+1; end x1
Matlab程序设计与应用第二版刘卫国课后实验答案
实验一:T1:%%第一小题z1=2*sin(85*pi/180)/(1+exp(2))%%第二小题x=[2,1+2i;—0.45,5];z2=1/2*log(x+sqrt(1+x。
^2));z2%%第三小题a=-3。
0:0。
1:3.0;z3=1/2*(exp(0.3*a)-exp(—0.3*a))。
*sin(a+0.3)+log((0。
3+a)/2)%%第四题t=0:0。
5:2.5z4=(t〉=0&t<1)。
*(t.^2)+(t〉=1&t〈2)。
*(t。
^2—1)+(t〉=2&t〈3).*(t。
^2—2*t+1)T2:A=[12,34,-4;34,7,87;3,65,7]B=[1,3,-1;2,0,3;3,—2,7]disp ('A+6*B=’);disp(A+6*B);disp('A-B+I=’);disp(A—B+eye(3));disp('A*B=’);disp(A*B);disp('A.*B=’);disp(A。
*B);disp('A^3=');disp(A^3);disp('A。
^3=’);disp(A.^3);disp(’A/B=’);disp(A/B);disp(’B\A=');disp(B\A);disp(’[A,B]=');disp([A,B]);disp(’[A([1,3],:);B^2]=');disp([A([1,3],:);B^2]);T3:z=1:25;A=reshape(z,5,5)’;B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11];C=A*BD=C(3:5,2:3)T4—1:a=100:999;b=find(rem(a,21)==0);c=length(b)T4-2:a=input('请输入一个字符串:’,’s’);b=find(a〉='A’&a〈=’Z’);a(b)=[];disp(a);实验二:T1:E=eye(3),R=rand(3,2),O=zeros (2,3),S=diag([1,2]);A=[E,R;O,S]disp(’A^2=');disp(A^2);disp('[E,R+RS;O,S^2]’);B=[E,R+R*S;O,S^2]T2:H=hilb(5)P=pascal(5)Hh=det(H)Hp=det(P)Th=cond(H)Tp=cond(P)a=abs(Th—1);b=abs(Tp-1);if a>bdisp('帕萨卡矩阵P性能更好');elseif a<bdisp(’希尔伯特矩阵H性能更好’); elsedisp(’两个矩阵性能相同’);endT3:a=1:25;A=reshape(a,5,5)disp(’行列式的值:’);disp(det(A));disp('矩阵的秩:’);disp(rank(A));disp('矩阵的迹:');disp(trace(A));disp(’矩阵的范数:');disp(norm(A));T4:A=[—29,6,18;20,5,12;—8,8,5][V,D]=eig(A)T5:A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6] B=[0.95,0。
matlab程序设计与应用刘卫国编课后实验答案8
实验一 MATLAB 运算基础1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。
(1) 0122sin851z e =+ (2) 221ln(1)2z x 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 解: 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;z3=(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)运算结果: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;z3=(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) z1 =0.2375z2 =0.7114 - 0.0253i 0.8968 + 0.3658i0.2139 + 0.9343i 1.1541 - 0.0044iz3 =0.7388 + 3.1416i 0.7696 + 3.1416i 0.7871 + 3.1416i 0.7913 + 3.1416iColumns 5 through 80.7822 + 3.1416i 0.7602 + 3.1416i 0.7254 + 3.1416i 0.6784 + 3.1416iColumns 9 through 120.6196 + 3.1416i 0.5496 + 3.1416i 0.4688 + 3.1416i 0.3780 + 3.1416iColumns 13 through 160.2775 + 3.1416i 0.1680 + 3.1416i 0.0497 + 3.1416i -0.0771 + 3.1416iColumns 17 through 20-0.2124 + 3.1416i -0.3566 + 3.1416i -0.5104 + 3.1416i -0.6752 + 3.1416iColumns 21 through 24-0.8536 + 3.1416i -1.0497 + 3.1416i -1.2701 + 3.1416i -1.5271 + 3.1416i-1.8436 + 3.1416i -2.2727 + 3.1416i -2.9837 + 3.1416i -37.0245 Columns 29 through 32-3.0017 -2.3085 -1.8971 -1.5978 Columns 33 through 36-1.3575 -1.1531 -0.9723 -0.8083 Columns 37 through 40-0.6567 -0.5151 -0.3819 -0.2561 Columns 41 through 44-0.1374 -0.0255 0.0792 0.1766 Columns 45 through 480.2663 0.3478 0.4206 0.4841 Columns 49 through 520.5379 0.5815 0.6145 0.6366 Columns 53 through 560.6474 0.6470 0.6351 0.61190.5777 0.5327 0.4774 0.4126 Column 610.3388z4 =0 0.2500 0 1.2500 1.0000 2.25002. 已知:求下列表达式的值:(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]解:M 文件: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(3)A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2]运算结果: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(3)A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2] ans =18 52 -10 46 7 105 21 53 49 ans =12 31 -3 32 8 84 0 67 1 ans =68 44 62309 -72 596154 -5 241ans =12 102 468 0 2619 -130 49ans =37226 233824 48604 247370 149188 600766 78688 454142 118820 ans =1728 39304 -64 39304 343 658503 27 274625 343 ans =16.4000 -13.6000 7.600035.8000 -76.2000 50.200067.0000 -134.0000 68.0000ans =109.4000 -131.2000 322.8000-53.0000 85.0000 -171.0000-61.6000 89.8000 -186.2000ans =12 34 -4 1 3 -1 34 7 87 2 0 3 3 65 7 3 -2 7 ans =12 34 -43 65 74 5 111 0 1920 -5 403. 设有矩阵A和B(1) 求它们的乘积C。
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:0.5:2.52. 已知: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 和B1234530166789101769,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 OS +⎡⎤=⎢⎥⎣⎦。
《MATLAB程序设计与应用》刘卫国高等教育出版社课后答案 已解锁-去水印 适合打印
SY404 clear all for n=1:4 if n==1 f1=1; elseif n==2 f2=0; elseif n==3 f3=1; else a=f3-2*f2+f1; b=a-2*f3+f2; c=b-2*a+f3; d=c-2*b+a; H=[1,0,1,a,b,c,d]; for m=8:4:99 a=d-2*c+b; b=a-2*d+c; c=b-2*a+d; d=c-2*b+a; H=[H,a,b,c,d]; end f100=d-2*c+b; end end max=max(H);
[f1,f2]=f(n); a=f1; b=f2; elseif n==30; [f1,f2]=f(n); c=f1; d=f2; else [f1,f2]=f(n); e=f1; f=f2; end end y1=e/(a+c); y2=f/(b+d); disp(['(1) y=',num2str(y1)]) disp(['(2) y=',num2str(y2)]) f function [f1,f2]=f(n) f1=n+10*log(n^2+5); x=0; for a=1:n b=a*(a+1); x=x+b; end f2=x; fushu function [e,l,s,c]=fushu(x) e=exp(x); l=log(x); s=sin(x); c=cos(x); disp(['复数e的指数是:',num2str(e)]) disp(['复数e的对数是:',num2str(l)]) disp(['复数e的正弦是:',num2str(s)]) disp(['复数e的余弦是:',num2str(c)])
刘卫国matlab课后习题答案
刘卫国matlab课后习题答案【篇一:matlab程序设计与应用第二版刘卫国课后实验答案】%第一小题z1=2*sin(85*pi/180)/(1+exp(2)) %%第二小题 x=[2,1+2i;-0.45,5];z2=1/2*log(x+sqrt(1+x.^2)); z2%%第三小题 a=-3.0:0.1:3.0;z3=1/2*(exp(0.3*a)-exp(-0.3*a)).*sin(a+0.3)+log((0.3+a)/2)%%第四题 t=0:0.5:2.5z4=(t=0t1).*(t.^2)+(t=1t2).*(t.^2-1)+(t=2t3).*(t.^2-2*t+1)t2:a=[12,34,-4;34,7,87;3,65,7] b=[1,3,-1;2,0,3;3,-2,7] disp (a+6*b=); disp(a+6*b); disp(a-b+i=); disp(a-b+eye(3)); disp(a*b=);disp(a*b); disp(a.*b=); disp(a.*b); disp(a^3=); disp(a^3);disp(a.^3=); disp(a.^3); disp(a/b=); disp(a/b); disp(b\a=);disp(b\a); disp([a,b]=); disp([a,b]);disp([a([1,3],:);b^2]=); disp([a([1,3],:);b^2]); t3: z=1:25;a=reshape(z,5,5);b=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11];1c=a*bd=c(3:5,2:3) t4-1:a=100:999;b=find(rem(a,21)==0); c=length(b) t4-2:a=input(请输入一个字符串:,s); b=find(a=aa=z); a(b)=[]; disp(a); 实验二: t1:e=eye(3),r=rand(3,2),o=zeros(2,3),s=diag([1,2]);a=[e,r;o,s] disp(a^2=); disp(a^2);disp([e,r+rs;o,s^2]); b=[e,r+r*s;o,s^2] t2: h=hilb(5) p=pascal(5) hh=det(h) hp=det(p) th=cond(h) tp=cond(p) a=abs(th-1);b=abs(tp-1); if abdisp(帕萨卡矩阵p性能更好); elseif abdisp(希尔伯特矩阵h性能更好); elsedisp(两个矩阵性能相同); end t3: a=1:25;a=reshape(a,5,5)disp(行列式的值:); disp(det(a));disp(矩阵的秩:); disp(rank(a));disp(矩阵的迹:);disp(trace(a));disp(矩阵的范数:); disp(norm(a)); t4:a=[-29,6,18;20,5,12;-8,8,5] [v,d]=eig(a) t5: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] x1=a\b b(3)=0.53 x2=a\bdisp(系数矩阵a的条件数:); disp(cond(a)); t6: a=1:25;a=reshape(a,5,5) disp(b1=sqrtm(a)); b1=sqrtm(a)disp(b2=sqrt(a)); b2=sqrt(a) disp(b1*b1); b1*b1disp(b2.*b2); b2.*b2实验三: t1:x=-5.0:2:5.0 for i=1:length(x);if (x(i)0)(x(i)~=-3)y(i)=x(i)^2+x(i)-6; elseif(x(i)=0)(x(i)5)(x(i)~=2)(x(i)~=3);y(i)=x(i)^2-5*x(i)+6; elsey(i)=x(i)^2-x(i)-1; end end y t2-if:s=input(please enter the score:); while (s0||s100)disp(the score is not reasonable); s=input(please enter the score:);endif (s=90s=100); disp(a);elseif(s=80s90); disp(b);elseif(s=70s80); disp(c);elseif(s=60s70); disp(d); elsedisp(e); endt2-switch:s=input(please enter the score:); while (s0||s100)disp(the score is not reasonable); s=input(please enter the score:); endswitch fix(s/10) case{9,10} disp(a); case{8} disp(b); case{7} disp(c); case{6} disp(d);case{0,1,2,3,4,5} disp(e); end t3:t=input(请输入工时time=); if t120w=120*84+(t-120)*1.15*84; elseif t60w=t*84-700; elsew=84*t; enddisp(应发工资为:); disp(w); t4:a=10+floor(rand(1)*89) b=10+floor(rand(1)*89)2s=input(请输入+或-或*或/,s);while(s~=+s~=-s~=*s~=/) disp(输入的符号错误,请重新输入);s=input(请输入+或-或*或/,s); end switch scase{+}c=a+b; case{-}c=a-b; case{*}c=a*b; case{/}c=a/b; end c t5:a=rand(5,6)n=input(请输入n:); while (n1)disp(输入的n有误,请重新输入); n=input(请输入n:); end if n5 b=a(5,:) elseb=a(n,:) end实验四: t1:n=input(请输入n:); m=0; for i=1:n;m=m+1/i^2; endpii=sqrt(6*m) t1-2:n=input(请输入n:); m=1./(1:n).^2; s=sum(m); pii=sqrt(6*s) t2: n=1000;y=0;for i=1:n;y=y+1/(2*i-1); if y=3disp(最大n值为:);i-1disp(对应的y值为:);y-1/(2*i-1)break; end end t3:format longa=input(请输入a:); b=input(请输入b:);x(1)=a/(1.0+b);i=1;x(2)=a/(x(i)+b); while (abs(x(i+1)-x(i))0.00001i500) i=i+1;x(i+1)=a/(x(i)+b); endr1=(-b+sqrt(b^2+4*a))/2; r2=(-b-sqrt(b^2+4*a))/2;disp([x,num2str(i+1),=,num2str(x(i+1),8)]);disp([x,num2str(i),=,num2str(x(i),8)]);disp([r1=,num2str(r1,8),,r2=,num2str(r2,8)]);format short t4:f(1)=1;f(2)=0;f(3)=1;i=4; while(i=100)f(i)=f(i-1)-2*f(i-2)+f(i-3); i=i+1; endfmax=max(f) fmin=min(f) fsum=sum(f)fp=length(find(f0)) fn=length(find(f0)) f0=length(find(f==0)) t5: j=0;s=0; for i=3:50m=i*(i-1)-1; if isprime(m)==1m3s=s+m;j=j+1; end enddisp([亲密数的对数:,num2str(j)]);disp([所有亲密素数之和:,num2str(s)]); 实验五: fn1:function f=fn1(n) f=n+10*log(n.^2+5); fn2:function f=fn2(n) f=0; for i=1:nf=f+i*(i+1); end fx:function f=fx(x)f=1./((x-2).^2+0.1)+1./((x-3).^4+0.01); t1:x=input(请输入一个复数:); fe=exp(x) flg=log(x) fsin=sin(x)fcos=cos(x) t2:m1=input(请输入m1:); m2=input(请输入m2:); t=input(请输入theta:);a=[m1*cos(t),-m1,-sin(t),0;m1*sin(t),0,... cos(t),0;0,m2,-sin(t),0;0,0,-cos(t),1] b=[0,m1*9.8,0,m2*9.8] disp([a1,a2,n1,n2]=); disp([a\b]); t3:j=1;n=1;k=1;for i=10:99% 挑选出10~99中所有的素数if isprime(i)==1 m(j)=i; j=j+1; end endfor t=1:length(m);4s(n)=10*rem(m(t),10)+fix(m(t)/10); %挑选出的素数进行位置交换 if isprime(s(n))==1 %再挑选出交换绝对素数r(k)=m(t);k=k+1; endn=n+1; enddisp([所有两位绝对素数:,num2str(r)]) t5:y1=fn1(40)/(fn1(30)+fn1(20)) %函数调用y2=fn2(40)/(fn2(30)+fn2(20)) 实验六: t1:x=linspace(0,2*pi,101);y=(0.5+3*sin(x)./(1+x.^2)).*cos(x); plot(x,y); t2:x=linspace(0,2*pi,100); y1=x.^2; y2=cos(2*x); y3=y1.*y2; subplot(2,2,1);plot(x,y1,r:,x,y2,y-,x,y3,b-.); subplot(2,2,2); plot(x,y1,r:); subplot(2,2,3); plot(x,y2,y-); subplot(2,2,4); plot(x,y3,b-.); t2-3: x=linspace(0,2*pi,10); y1=x.^2; y2=cos(2*x); y3=y1.*y2; subplot(3,4,1);bar(x,y1,r);axis([0,7,0,40]); subplot(3,4,2);stairs(x,y1,y);axis([0,7,0,40]); subplot(3,4,3);stem(x,y1,b);axis([0,7,0,40]); subplot(3,4,4);fill(x,y1,g);axis([0,7,0,40]);subplot(3,4,5);bar(x,y2,r);axis([-1,7,-1,1]); subplot(3,4,6);stairs(x,y2,y);axis([-1,7,-1,1]); subplot(3,4,7);stem(x,y2,b);axis([-1,7,-1,1]); subplot(3,4,8);fill(x,y2,g);axis([-1,7,-1,1]); subplot(3,4,9);bar(x,y3,r);axis([0,7,-30,50]); subplot(3,4,10);stairs(x,y3,y);axis([0,7,-30,50]); subplot(3,4,11);stem(x,y3,b);axis([0,7,-30,50]); subplot(3,4,12);fill(x,y3,g);axis([0,7,-30,50]); t3:x=linspace(-5,5,100); y=[]; for x0=x; if x0=0;y=[y,(x0+sqrt(pi))/exp(2)]; elsey=[y,1/2*log(x0+sqrt(1+x0^2))]; end endsubplot(1,2,1); plot(x,y);for i=1:length(x) if x(i)=0y(i)=(x(i)+sqrt(pi))/exp(2); elsey(i)=1/2*log(x(i)+sqrt(1+x(i)^2)); end endsubplot(1,2,2); plot(x,y); t4:a=input(请输入a:); b=input(请输入b:); n=input(请输入n:);theta=0:0.001:2*pi; y=a.*sin(b+n.*theta); polar(theta,y); t5:x=linspace(-5,5,21); y=linspace(0,10,31); [x,y]=meshgrid(x,y); z=cos(x).*cos(y).*exp(-sqrt(x.^2+y.^2)/4); subplot(1,2,1);surf(x,y,z); subplot(1,2,2); contour3(x,y,z); t6:s=0:pi/2; t=0:3*pi/2;[s,t]=meshgrid(s,t); x=cos(s).*cos(t); y=cos(s).*sin(t); z=sin(s); surf(x,y,z); shading interp; 实验八: t1:a=rand(1,30000); disp(均值为:); mean(a)disp(标准方差为:); std(a)disp(最大元素为:); max(a)disp(最小元素为:); min(a)k=find(a0.5); b=length(k);disp(大于0.5的随机数个数占总数的百分比:);sprintf(%f%%, b/300) t2:p=45+50*rand(100,5) disp(最高分及序号:); [y,u]=max(p,[],1)disp(最低分及序号:); [y1,u1]=min(p,[],1)disp(每门课平均分:);5【篇二:matlab程序设计与应用(刘卫国编)课后实验答案】xt>1. 先求下列表达式的值,然后显示matlab工作空间的使用情况并保存全部变量。
MATLAB程序设计与应用(刘卫国)》(第二版)-课后实验答案
MATLAB程序设计与应⽤(刘卫国)》(第⼆版)-课后实验答案《MATLAB程序设计与应⽤(刘卫国)》(第⼆版)实验⼀MATLAB运算基础1.(1) z1=2*sin(pi*85/180)/(1+exp(2))(2)x=[2,1+2i;-0.45,5];z2=log(x+sqrt(1+x.^2))/2(3)a=-3.0:0.1:3.0;z3=0.5*(exp(0.3*a)-exp(-0.3*a)).*sin(a+0.3)+log((0.3+a)/2)(4)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)2. A=[12,34,-4;34,7,87;3,65,7];B=[1,3,-1;2,0,3;3,-2,7];(1)a=A+6*Bb=A-B+eye(size(A)) %I=eye(size(A))(2)c=A*Bd=A.*B(3)e=A^3f=A.^3(4)g=A/Bh=B\A(5)m=[A,B]n=[A([1,3],:);B^2]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];B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11];(1)C=A*B(2)D=C(3:end,2:end)4.(1) a=100:999;b=rem(a,21)==0;c=find(b);d=length(c)(2)ch='Just as Bianhaiman said,Xiehong is ...';e=find(ch>='A'&ch<='Z');ch(e)=[]实验⼆ MATLAB矩阵分析与处理R=rand(3,2);O=zeros(2,3);S=diag([1,2]);A=[E,R+R*S;O,S^2];a=A^22. H=hilb(5);P=pascal(5);Hh=det(H)Hp=det(P)Th=cond(H)Tp=cond(P)3. A=rand(5,5);a=det(A) %⾏列式的值b=trace(A) %⾏列式的迹c=rank(A) %⾏列式的秩d=norm(A) %⾏列式的范数4. A=[-29,6,18;20,5,12;-8,8,5];[V,D]=eig(A)5. 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]';(1)x=inv(A)*b(2)b1=[0.95,0.67,0.53]';x=inv(A)*b1(3)c=cond(A)6. A=rand(3,3);B=sqrtm(A)C=sqrt(A)实验三选择结构程序设计1. x=input('请输⼊x的值:');if x<0&x~=-3y=x*x+x-6;elseif x>=0&x<5&x~=2&x~=3y=x*x-5*x+6;elseendy2.(if语句)score=input('请输⼊成绩:');if score>=0&score<60disp('E');elseif score>=60&score<70disp('D');elseif score>=70&score<80disp('C');elseif score>=80&score<90disp('B');elseif score>=90&score<=100disp('A');elsedisp('您输⼊的成绩有误,请重新输⼊!'); end(switch语句)score=input('请输⼊成绩:');switch fix(score/10)case num2cell(0:5)disp('E');case {6}disp('D');case {7}disp('C');case {8}disp('B');case {9}disp('A');otherwisedisp('您输⼊的成绩有误,请重新输⼊!'); end 3. a=input('请输⼊⼯号:','s');b=input('请输⼊该员⼯的⼯时数:');y=120*84+(b-120)*(1+15/100)*84; elseif b<60y=b*84-700;elsey=b*84;endy4.a=10+fix(89*rand());b=10+fix(89*rand());c=input('请输⼊⼀个运算符:','s'); if c=='+' disp(a+b);elseif c=='-'disp(a-b);elseif c=='*'disp(a*b);elsedisp(a/b);end5. A=rand(5,6);n=1:5;n=input('请输⼊n的值:');tryB=A(n,:);catchB=A(end,:);endBlasterr实验四循环结构程序设计1.(循环结构)n=input('请输⼊n的值:');y=0;for i=1:ny=y+1/i/i;pi=sqrt(6*y);endpi(向量运算)n=input('请输⼊n的值:');i=1:n;y=1./i.^2;f=sum(y);pi=sqrt(f*6)2. y=0;n=0;while 1n=n+1;y=y+1/(2*n-1);if y>=3breakendendny=y-1/(2*n-1)3. a=input('输⼊a的值:');b=input('输⼊b的值:');x0=1.0;n=1;x1=a/(b+x0);while abs(x1-x0)>=10^(-5)|n<=500 x1=a/(b+x0); x0=x1;n=n+1;endx14. f(1)=1;f(2)=0;f(3)=1;for n=4:100f(n)=f(n-1)-2*f(n-2)+f(n-3); enda=max(f) %最⼤值b=min(f) %最⼩值c=sum(f) %各数之和d=length(find(f>0)) %正数的个数e=length(find(f==0)) %零的个数f=length(find(f<0)) %负数的个数5. n=0;s=0;for k=2:49sn=k*(k+1)-1;m=fix(sqrt(sn));for i=2:mif rem(sn,i)==0breakelseendendif i==mn=n+1;s=s+sn;endendns实验五函数⽂件1.(函数⽂件)function [e,l,s,c]=f1(x)e=exp(x);l=log10(x);s=sin(x);c=cos(x);(命令⽂件)x=input('请输⼊⼀个复数:'); [e,l,s,c]=f1(x);elsc2.(函数⽂件)function [x]=f2(A,B)C=B';x=C*inv(A);(命令⽂件)m1=input('Enter m1:');m2=input('Enter m2:');theta=input('Enter theta:'); g=9.8;A=[m1*cos(theta),-m1,-sin(theta),0;m1*sin(theta),0,cos(theta),0;0,m2,-sin(theta),0;0,0,-cos(theta),1]; B=[0,m1*g,0,m2*g]';[x]=f2(A,B);x3.(函数⽂件)function f=f3(x)f=1;for i=2:sqrt(x)if rem(x,i)==0f=0;breakendend(命令⽂件)for i=10:99j=10*rem(i,10)+fix(i/10);if f3(i)&f3(j)disp(i);endend4.(函数⽂件)function f=f4(x)f=1./((x-2).^2+0.1)+1./((x-3).^4+0.01);(命令⽂件)x=[1,2,3;4,5,6];y=f4(x)5.(1)(函数⽂件)function f=f5(n)f=n+10*log(n^2+5);(命令⽂件)y=f5(40)/(f5(30)+f5(20))(2)(函数⽂件)function f=f6(i)g=0;for i=1:nf=g+i.*(i+1);end(命令⽂件)y=f6(40)/(f6(30)+f6(20))实验六⾼层绘图操作1. x=linspace(0,2*pi,101);y=(0.5+3*sin(x)./(1+x.*x));plot(x,y);title('实验六第⼀题');xlabel('X');ylabel('Y');text(3,0.6,'y=0.5+3sin(x)/(1+x^2)');2.(1)x=linspace(0,pi,100);y1=x.^2;y2=cos(2*x);y3=y1.*y2;plot(x,y1,'b',x,y2,'g',x,y3,'r'); title('同⼀坐标系下得三条曲线'); text(2,4,'y1=x^2');text(2,-0,8,'y2=cos(2x)');text(2,-2.2,'y=x^2*cos(2x)');xlabel('X');ylabel('Y');(2)x=linspace(0,pi,100); y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(1,3,1);plot(x,y1);title('y1=x^2');xlabel('X');ylabel('Y'); subplot(1,3,2);plot(x,y2);title('y2=cos(x)');xlabel('X');ylabel('Y') subplot(1,3,3);plot(x,y3);title('y3=x^2*cos(x)'); xlabel('X');ylabel('Y');(3)x=linspace(0,2*pi,20); y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(4,3,1);bar(x,y1);subplot(4,3,2);bar(x,y2);subplot(4,3,3);bar(x,y3);subplot(4,3,4);stairs(x,y1);subplot(4,3,5);stairs(x,y2);subplot(4,3,6);stairs(x,y3);subplot(4,3,7);stem(x,y1);subplot(4,3,8);stem(x,y2);subplot(4,3,9);stem(x,y3);subplot(4,3,10);fill(x,y1,'b');subplot(4,3,11);fill(x,y2,'r');subplot(4,3,12);fill(x,y3,'g');3. x=linspace(-5,5,100);y=[];for x0=xif x0>=-5&x<=0y=[y,(x0+sqrt(pi))/exp(2)];elsey=[y,log(x0+sqrt(1+x0.^2))/2];endendplot(x,y);title('实验六第三题');xlabel('X');ylabel('Y');4. a=input('请输⼊a:');b=input('请输⼊b:');n=input('请输⼊n:');theta=0:0.01:2*pi;rho=a.*sin(b+n.*theta);polar(theta,rho,'r');title('极坐标曲线');(如:当输⼊a=3,b=4,n=6时,图形为:)5. x=linspace(-5,5,21);y=linspace(0,10,31);[x,y]=meshgrid(x,y);z=cos(x).*cos(y).*exp(-sqrt(x.*x+y.*y)/4); subplot(2,1,1); surf(x,y,z);title('曲⾯图');xlabel('X');ylabel('Y');zlabel('Z'); subplot(2,1,2);surfc(x,y,z);title('等⾼线图');xlabel('X');ylabel('Y');zlabel('Z');6.(⽅法⼀)s=0:pi/100:pi/2;t=0:pi/100:3*pi/2;[s,t]=meshgrid(s,t);x=cos(s).*cos(t);y=cos(s).*sin(t);z=sin(s);surf(x,y,z);shading interp;title('实验六第六题');xlabel('X');ylabel('Y');zlabel('Z');(⽅法⼆)ezsurf('cos(s)*cos(t)','cos(s)*sin(t)','sin(s)',[0,0.5*pi,0,1.5*pi]); shading interp;实验七低层绘图操作1. hf=figure('MenuBar','figure','NumberTitle','off','Color','r',...'Name','图形窗⼝⽰例',...'WindowButtonDownFcn','disp(''Left Button Pressed.'')');2. x=-1:0.1:1;y=x.^2.*exp(2*x);h=line('XData',x,'YData',y);text(0.6,0.36*exp(1.2),'\leftarrow y=x^2*exp(2*x)');set(h,'Color','r','LineStyle','--','LineWidth',2);grid on;title('函数y=x^2*exp(2*x)');3. x=0:0.00001:0.001;[x,t]=meshgrid(x);v=10*exp(-0.01*x).*sin(2000*pi*t-0.2*x+pi);axes('view',[-37.5,30]);hf=surface(x,t,v);grid on;xlabel('X');ylabel('Y');zlabel('Z');title('曲⾯v=10*exp(-0.01*x)*sin(2000*pi*t-0.2*x+pi)');set(hf,'EdgeColor','interp','FaceColor','r','LineStyle',':','LineWidth',2);4. x=linspace(0,2*pi,20);y1=sin(x);y3=sin(x)./(cos(x)+eps);y4=cos(x)./(sin(x)+eps);axes('Position',[0.15,0.1,0.2,0.4]);plot(x,y1);title('y1=sin(x)');axes('Position',[0.05,0.6,0.2,0.3]);plot(x,y2);title('y2=cos(x)');axes('Position',[0.45,0.6,0.3,0.3]);plot(x,y3);title('y3=tan(x)');axes('Position',[0.5,0.2,0.3,0.2]);plot(x,y4);title('y4=cot(x)');5. cylinder(3);light('Position',[1,2,4]); shading interp;lighting gouraud;material shiny实验⼋数据处理与多项式计算1.A=rand(1,30000);a=mean(A) %均值b=std(A,0,2) %标准⽅差c=max(A) %最⼤元素d=min(A) %最⼩元素n=0;for i=1:30000if A(i)>0.5n=n+1; %⼤于0.5的随机数的个数endendm=n/30000 %百分⽐2. P=45+fix(50*rand(100,5));[zgf,xh]=max(P) %每门课的最⾼分及相应的学号[zdf,xh]=min(P) %每门课的最低分及相应的学号pjf=mean(P) %每门课的平均分fc=std(P) %标准⽅差A=sum(P,2); %总分[zfzg,xh]=max(A) %总分最⾼分及学号[zfzd,xh]=min(A) %总分最低分及学号[zcj,xsxh]=sort(A,1,'descend')x=6.5:2:17.5;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]; a=interp1(h,t1,x,'spline')b=interp1(h,t2,x,'spline')4. x=linspace(1,101,10);y=log10(x);p=polyfit(x,y,5);y1=polyval(p,x);plot(x,y,'r:o',x,y1,'-*')。
Matlab程序设计与应用第二版刘卫国课后实验答案
Matlab 程序设计与应用第二版刘卫国课后实验答案实验一: C=A*BT1: D=C(3:5,2:3)T4-1: %%第一小题z1=2*sin(85*pi/180)/(1+exp(2)) a=100:999; %% 第二小题b=find(rem(a,21)==0); x=[2,1+2i;-0.45,5]; c=length(b)z2=1/2*log(x+sqrt(1+x42)); T4-2:z2 a=input(' 请输入一个字符串:','s'); %% 第三小题b=find(a>='A'&a<='Z'); a=-3.0:0.1:3.0; a(b)=[];z3=1/2*(exp(0.3*a)-exp(-0.3*a)).*sin(a+0.3)+ldisp(a);og((0.3+a)/2) 实验二:%%第四题T1:t=0:0.5:2.5 E=eye(3),R=rand(3,2),O=zeros(2,3),S=diag([1,2z4=(t>=0&t<1).*(t.A2)+(t>=1 &t<2).*(t.A2-1)+(t]);>=2&t<3)*(t.A2-2*t+1) A=[E,R;O,S]disp('A A2='); T2: disp(A A2); A=[12,34,-4;34,7,87;3,65,7] disp('[E,R+RS;O,S A2]'); B=[1,3,-1;2,0,3;3,-2,7] B=[E,R+R*S;O,SA2] disp ('A+6*B='); T2:disp(A+6*B); H=hilb(5)disp('A-B+I='); P=pascal(5) disp(A-B+eye(3)); Hh=det(H)disp('A*B='); Hp=det(P)disp(A*B); Th=cond(H) disp('A.*B='); Tp=cond(P) disp(A.*B);a=abs(Th-1); disp('AA3='); b=abs(Tp-1); disp(AA3); if a>bdisp('A43='); disp(' 帕萨卡矩阵P 性能更好');disp(A43); elseif a<bdisp('A/B='); disp(' 希尔伯特矩阵H性能更好');disp(A/B); elsedisp('B\A='); disp(' 两个矩阵性能相同'); disp(B\A); end disp('[A,B]='); T3:disp([A,B]); a=1:25;disp('[A([1,3],:);B A2]='); A=reshape(a,5,5) disp([A([1,3],:);B A2]);disp(' 行列式的值:'); T3: disp(det(A)); z=1:25; disp(' 矩阵的秩:');A=reshape(z,5,5)'; disp(rank(A)); B=[3,0,16;17,-6,9;0,23,- 4;9,7,0;4,13,11]; disp(' 矩阵的迹:');1disp(trace(A)); enddisp(' 矩阵的范数:'); if (s>=90&s<=100);disp('A'); disp(norm(A));T4: elseif(s>=80&s<90); A=[-29,6,18;20,5,12;-8,8,5] disp('B'); [V,D]=eig(A)elseif(s>=70&s<80); T5: disp('C'); A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6]elseif(s>=60&s<70); B=[0.95,0.67,0.52]' disp('D'); X1=A\B elseB(3)=0.53 disp('E'); X2=A\B enddisp('系数矩阵A的条件数:');T2-switch:disp(cond(A)); s=input('please enter the score:');T6: while (s<0||s>100) a=1:25; disp('the score is not reasonable');A=reshape(a,5,5) s=input('please enter the score:');disp('B1=sqrtm(A)'); endB1=sqrtm(A) switch fix(s/10) disp('B2=sqrt(A)'); case{9,10}B2=sqrt(A) disp('A');disp('B1*B1'); case{8}B1*B1 disp('B');disp('B2.*B2'); case{7}B2.*B2 disp('C');实验三: case{6}T1: disp('D');x=-5.0:2:5.0 case{0,1,2,3,4,5} for i=1:length(x); disp('E');if (x(i)<0)&(x(i)~=-3) endy(i)=x(iF2+x(i)-6; T3:elseif t=input(' 请输入工时time=');(x(i)>=0)&(x(i)<5)&(x(i)~=2)&(x(i)~=3); if t>120 y(i)=x(i)A2-5*x(i)+6; w=120*84+(t-120)*1.15*84;else elseif t<60y(i)=x(i)A2-x(i)-1; w=t*84-700;end elseend w=84*t; y endT2-if: disp(' 应发工资为:'); s=input('please enter the score:');disp(w);while (s<0||s>100) T4:disp('the score is not reasonable'); a=10+floor(rand(1)*89)s=input('please enter the score:'); b=10+floor(rand(1)*89)2s=i nput('请输入+ 或-或* 或/','s'); for i=1: n;while(s~='+'&&s~='-'&&s~='*'&&s~='/') y=y+1/(2*i-1);if y>=3 disp(' 输入的符号错误,请重新输入');s=input('请输入+ 或-或*或/','s'); disp(' 最大n 值为:');end i-1switch s disp(' 对应的y 值为:');case{'+'} y-1/(2*i-1)c=a+b; break;case{'-'} endend c=a-b;T3: case{'*'}c=a*b; format longa=input(' 请输入a:'); case{'/'}b=input(' 请输入b:'); c=a/b;x(1)=a/(1.0+b);i=1;x(2)=a/(x(i)+b);end while (abs(x(i+1)-x(i))>0.00001&i<500)i=i+1; cx(i+1)=a/(x(i)+b); T5:A=rand(5,6) endn=input('请输入n:'); r1=(-b+sqrt(b A2+4*a))/2;r2=(-b-sqrt(b A2+4*a))/2; while (n <1)disp(['x',num2str(i+1),'=',num2str(x(i+1),8)]); disp(' 输入的n 有误,请重新输入');n=input(' 请输入n:'); disp(['x',num2str(i),'=',num2str(x(i),8)]);end disp(['r1=',num2str(r1,8),',r2=',num2str(r2,8)])if n>5 ;B=A(5,:) format shortelse T4:B=A(n,:) f(1)=1;f(2)=0;f(3)=1;i=4; End while(i<=100) f(i)=f(i-1)-实验四: 2*f(i-2)+f(i-3);T1: i=i+1;n=input(' 请输入n:'); endm=0; fmax=max(f)for i=1:n; fmin=min(f)m=m+1/i A2; fsum=su m(f)end fp=length(find(f>0)) pii=sqrt(6*m) fn=length(find(f<0)) T1-2:f0=length(find(f==0)) n=input(' 请输入n:'); T5:m=1./(1:n).A2; j=0;s=0;s=sum(m); for i=3:50pii=sqrt(6*s) m=i*(i-1)-1; T2: if isprime(m)==1 n=1000;y=0; m3s=s+m; s(n)=10*rem(m(t),10)+fix(m(t)/10); %j=j+1; 挑选出的素数进行位置交换if isprime(s(n))==1 % 再挑选出交换endend 绝对素数disp([' 亲密数的对数:',num2str(j)]); r(k)=m(t);disp([' 所有亲密素数之和:',num2str(s)]); k=k+1;实验五: endfn1: n=n+1;function f=fn1(n) endf=n+10*log( n. A2+5); disp(['所有两位绝对素数:',num2str(r)]) fn2: T5: function f=fn2(n) y1=fn1(40)/(fn1(30)+fn1(20)) % 函数调用f=0;y2=fn2(40)/(fn2(30)+fn2(20)) for i=1:n 实验六:f=f+i*(i+1); T1:end x=linspace(0,2*pi,101); fx: y=(0.5+3*sin(x)./(1+x.A2)).*cos(x);function f=fx(x) plot(x,y);f=1./((x-2).A2+0.1)+1./((x-3).A4+0.01); T2:T1: x=linspace(0,2*pi,100); x=input(' 请输入一个复数:'); y1=x.A2;fe=exp(x) y2=cos(2*x);flg=log(x) y3=y1.*y2;fsin=sin(x) subplot(2,2,1);fcos=cos(x) plot(x,y1,'r:',x,y2,'y-',x,y3,'b-.'); T2: subplot(2,2,2);m1=input(' 请输入m1:'); plot(x,y1,'r:');m2=input(' 请输入m2:'); subplot(2,2,3);t=input(' 请输入theta:'); plot(x,y2,'y-');A=[m1*cos(t),-m1,-sin(t),0;m1*sin(t),0,... subplot(2,2,4);cos(t),0;0,m2,-sin(t),0;0,0,-cos(t),1] plot(x,y3,'b-.');B=[0,m1*9.8,0,m2*9.8]' T2-3:disp('[a1,a2,N1,N2]='); x=linspace(0,2*pi,10); disp([A\B]'); y1=x.A2;T3: y2=cos(2*x);j=1;n=1;k=1; y3=y1.*y2;for i=10:99 % 挑选出1 0~99中所subplot(3,4,1);有的素数bar(x,y1,'r');axis([0,7,0,40]);if isprime(i)==1 subplot(3,4,2);m(j)=i; stairs(x,y1,'y');axis([0,7,0,40]);j=j+1; subplot(3,4,3);end stem(x,y1,'b');axis([0,7,0,40]); end subplot(3,4,4);for t=1:length(m); fill(x,y1,'g');axis([0,7,0,40]);4subplot(3,4,5); theta=0:0.001:2*pi; bar(x,y2,'r');axis([-1,7,-1,1]); y=a.*sin(b+n.*theta);polar(theta,y); subplot(3,4,6);stairs(x,y2,'y');axis([-1,7,-1,1]); T5:subplot(3,4,7); x=linspace(-5,5,21); stem(x,y2,'b');axis([-1,7,-1,1]); y=linspace(0,10,31); subplot(3,4,8); [x,y]=meshgrid(x,y);fill(x,y2,'g');axis([-1,7,-1,1]); z=cos(x).*cos(y).*exp(- sqrt(x.A2+y.A2)/4);subplot(3,4,9); subplot(1,2,1); bar(x,y3,'r');axis([0,7,-30,50]); surf(x,y,z);subplot(3,4,10); subplot(1,2,2); stairs(x,y3,'y');axis([0,7,-30,50]); contour3(x,y,z); subplot(3,4,11); T6:stem(x,y3,'b');axis([0,7,-30,50]); s=0:pi/2;subplot(3,4,12); t=0:3*pi/2; fill(x,y3,'g');axis([0,7,-30,50]);[s,t]=meshgrid(s,t); T3: x=cos(s).*cos(t); x=linspace(-5,5,100);y=cos(s).*sin(t); y=[]; z=sin(s);for x0=x; surf(x,y,z);if x0<=0; shading interp;y=[y,(x0+sqrt(pi))/exp(2)]; 实验八:else T1:y=[y,1/2*log(xO+sqrt(1+xOA2))]; A=ra nd(1,30000);end disp(' 均值为 :');end mean(A)subplot(1,2,1); disp(' 标准方差为 :'); plot(x,y); std(A) disp(' 最大元素为 :'); max(A)disp(' 最小元素为 :'); for i=1:length(x) min(A) if x(i)<=0 k=find(A>0.5); y(i)=(x(i)+sqrt(pi))/exp(2); b=length(k);else disp(' 大于 0.5 的随机数个数占总数的百分y(i)=1/2*log(x(i)+sqrt(1+x(i)A 2)); 比:');end sprintf('%f%%', b/300) end T2:subplot(1,2,2); P=45+50*rand(100,5) plot(x,y); disp(' b=input(' 请输入 b:'); [Y1,U1]=min(P,[],1) n=input(' 门课平均分 :');mean(P,1) i=i+1;disp(' 每门课的标准方差 :'); x=x+0.01;end std(P,0,1)s=sum(P,2); dx=diff(g)/0.01; disp(' 总分最高分 :'); dx(1)[Y2,U2]=max(s,[],1) dx(101)disp(' 总分最低分 :'); dx(length(g)-1) [Y3,U3]=min(s,[],1) T2:[zcj,xsxh]=sort(s,1,'descend') %descend f1=i nli ne('sqrt(cos(t42)+4*si n(2*t)42+1)')序 f2=i nli ne('log(1+x)丿(1+X.A2)')T3: I1=quad(f1,0,2*pi) h=6:2:18; I2=quad(f2,0,2*pi) 最高分及序号 :');T4: [Y,U]=max(P,[],1) a=input(' 请输入 a:'); disp(' 最低分及序号 :'); 请输入 n:'); disp(' 每t1=[18.0,20.0,22.0,25.0,30.0,28.0,24.0]; T3:t2=[15.0,19.0,24.0,28.0,34.0,32.0,30.0]; A=[6,5,-2,5;9,-1,4,- 1;3,4,2,-2;3,-9,0,2];t=6.5:2:17.5; B=[-4,13,1,11]'; T1=interp1(h,t1,t,'spline') x1=A\BT2=interp1(h,t2,t,'spline') [L,U]=lu(A); T4: x2=U\(L\B)x=1:10:101; [Q,R]=qr(A); y=log10(x); x3=R\(Q\B)p=polyfit(x,y,5) fun:x1=1:0.01:101; function F=fun(X); y1=log10(x1); x=X(1); y2=polyval(p,x1);y=X(2);plot(x1,y1,'r-',x1,y2,'b-.'); z=X(3);T5: F(1)=si n(x)+yA2+log(z)-7; P仁[1,2,4,0,5]; F(2)=3*x+2A y-z A3+1;P2=[0,0,0,1,2]; F(3)=x+y+z-5; P3=[0,0,1,2,3]; T5:P4=conv(P2,P3); f=inline('3*x+sin(x)-exp(x)');sp1=length(P1); fzero(f,1.5) sp2=length(P4); X=fsolve('fun',[1 11]',optimset('Display','off'))P=[zeros(1,sp2-sp1),P1]+P4 实验十:x=roots(P) T1:A=[-1,1.2,-1.4;0.75,2,3.5;0,5,2.5]; x=sym('6'); Ax=polyval(P,A)y=sym('5'); AA=polyvalm(P,A) z=(x+1)/(sqrt(3+x)-sqrt(y)) 实验九: T2: T1: syms x y;f=inlin e('det([x x A2 x A3;1 2*x 3*x A2;0 2 t=sym('5135'); 6*x])'); factor(x A4-y A4) i=1;x=1; factor(t)while x<=3.01 T3:g(i)=f(x); syms beta1 beta2 x;6simplify(sin(beta1)*cos(beta2)-cos(beta1)*sinsyms n x ;(beta2)) S1=symsum(1/(2*n-1),n,1,10)S2=symsum(nA2*xA(n-1),n,1,inf) simplify((4*xA2+8*x+3)/(2*x+1))T4: S3=symsum(nA2/5An,n,1,inf) syms a b c d e f g h k; T2:p1=[0,1,0;1,0,0;0,0,1]; x=sym('x');p2=[1,0,0;0,1,0;1,0,1]; f=log(x);A=[a,b,c;d,e,f;g,h,k]; taylor(f,x,6,1)B=p1*p2*A T3:B1=inv(B) x1=solve('log(1+x)-5/(1+sin(x))=2') B1*B;x2=solve('xA2+9*sqrt(x+1)-1=0') tril(B) x3=solve('3*x*exp(x)+5*sin(x)- 78.5=0') det(B) [x4,y4]=solve('sqrt(xA2+yA2)-100=0','3*x+5*y-T5: 8=0')syms x t a y T4:f1=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/sin(x)dsolve('D2y+4*Dy+29*y=0','y(0)=0','Dy(0)=15'A3; ,'x')limit(f1,x,0) %(1) T5:f2=(sqrt(pi)-sqrt(acos(x)))/sqrt(x+1); [x,y,z]=dsolve('Dx=2*x- 3*y+3*z','Dy=4*x-5*y+limit(f2,x,-1,'right') %(2) 3*z','Dz=4*x-4*y+2*z','t') f3=(1-cos(2*x))/x;diff(f3,x,1) %(3)diff(f3,x,2)A=[a A x,t A3;t*cos(x),log(x)];diff(A,x,1) &(4)diff(A,t,2)diff(diff(A,x,1),t,1)f5=(xA2-2*x)*exp(-xA2-yA2-x*y);yx=-diff(f5,x,1)/diff(f5,y,1) %(5)fxy=diff(diff(f5,x,1),y,1)x=sym('0');y=sym('1');eval(fxy)T6:x=sym('x');f1=1/(1+xA4+xA8);int(f1,x)f2=1/(asin(x))A2/sqrt(1-xA2);int(f2,x)f3=(xA2+1)/(xA4+1);int(f3,x,0,inf)f4=exp(x)*(1+exp(x))A2;int(f4,x,0,log(2))实验十一:T1: 7。
MATLAB程序设计与应用(刘卫国编)课后实验答案
真验一MATLAB运算前提之阳早格格创做1. 先供下列表白式的值,而后隐现MATLAB处事空间的使用情况并保存局部变量.(1)0 122sin851ze =+(2)21ln( 2z x=+,其中2120.455i x+⎡⎤=⎢⎥-⎣⎦(3)0.30.330.3sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22a ae e az a a--+=++=--(4)2242011122123t tz t tt t t⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t解: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;z3=(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) 运算截止: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;z3=(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) z1 =z2 =z3 =Columns 1 through 4Columns 5 through 8Columns 9 through 12Columns 13 through 16Columns 17 through 20Columns 21 through 24Columns 25 through 28-1.8436 + 3.1416i -2.2727 + 3.1416i -2.9837 + 3.1416i -37.0245 Columns 29 through 32-3.0017 -2.3085 -1.8971 -1.5978Columns 33 through 36-1.3575 -1.1531 -0.9723 -0.8083Columns 37 through 40-0.6567 -0.5151 -0.3819 -0.2561Columns 41 through 44-0.1374 -0.0255 0.0792 0.1766Columns 45 through 480.2663 0.3478 0.4206 0.4841Columns 49 through 520.5379 0.5815 0.6145 0.6366Columns 53 through 560.6474 0.6470 0.6351 0.6119Columns 57 through 600.5777 0.5327 0.4774 0.4126Column 610.3388z4 =2. 已知:供下列表白式的值:(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]解:M 文献: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(3)A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2]运算截止: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(3)A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2]ans =18 52 -1046 7 10521 53 49ans =12 31 -332 8 840 67 1ans =68 44 62309 -72 596154 -5 241ans =12 102 468 0 2619 -130 49ans =37226 233824 48604247370 149188 60076678688 454142 118820ans =1728 39304 -6439304 343 65850327 274625 343ans =ans =ans =12 34 -4 1 3 -134 7 87 2 0 33 65 7 3 -2 7ans =12 34 -43 65 74 5 111 0 1920 -5 403. 设有矩阵A战B(1) 供它们的乘积C.(2) 将矩阵C的左下角3×2子矩阵赋给D.(3) 查看MATLAB处事空间的使用情况.解:. 运算截止:E=(reshape(1:1:25,5,5))';F=[3 0 16;17 -6 9;0 23 -4;9 7 0;4 13 11]; C= E*FH=C(3:5,2:3)C =93 150 77258 335 237423 520 397588 705 557753 890 717H =520 397705 557890 7174. 完毕下列支配:(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 =真验二MATLAB矩阵分解与处理1. 设有分块矩阵33322322E RAO S⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E、R、O、S分别为单位矩阵、随机矩阵、整矩阵战对于角阵,试通过数值估计考证22E R RS AO S+⎡⎤=⎢⎥⎣⎦.解: M文献如下;输出截止:S =1 00 2A =0 0 0 1.0000 0a =0 0 0 1.0000 0 ans =0 0 0 0 00 0 0 0 00 0 0 0 00 0 0 0 00 0 0 0 0由ans,所以22E R RS AO S+⎡⎤=⎢⎥⎣⎦2. 爆收5阶希我伯特矩阵H战5阶帕斯卡矩阵P,且供其止列式的值Hh战Hp以及它们的条件数Th战Tp,推断哪个矩阵本能更佳.为什么?解:M文献如下:输出截止:H =P =1 1 1 1 1123d4e56g91 2 3 4 51 3 6 10 151 4 10 20 351 5 15 35 70Hh =Hp =1Th =4.7661e+005Tp =8.5175e+003果为它们的条件数Th>>Tp,所以pascal矩阵本能更佳.3. 修坐一个5×5矩阵,供它的止列式值、迹、秩战范数.解: M文献如下:输出截止为:A =17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9d =5070000t =65c1 =c2 =cinf =4. 已知供A的特性值及特性背量,并分解其数教意思.解:M文献如图:输出截止为:V =D =-25.3169 0 00 -10.5182 0数教意思:V的3个列背量是A的特性背量,D的主对于角线上3个是A的特性值,特别的,V的3个列背量分别是D的3个特性值的特性背量.5. 底下是一个线性圆程组:(1) 供圆程的解.(2) 将圆程左边背量元素b3改为0.53再供解,并比较b3的变更妥协的相对于变更.(3) 估计系数矩阵A的条件数并分解论断.解: M文献如下:输出截止:X =X2 =C =1.3533e+003由截止,X战X2的值一般,那表示b的微弱变更对于圆程解也做用较小,而A的条件数算得较小,所以数值宁静性较佳,A是较佳的矩阵.6. 修坐A矩阵,试比较sqrtm(A)战sqrt(A),分解它们的辨别.解:M文献如下:运止截止有:A =16 6 1820 5 129 8 5b1 =b2 =b =分解截止知:sqrtm(A)是类似A的数值仄圆根(那可由b1*b1=A的截止瞅出),而sqrt(A)则是对于A中的每个元素启根号,二则辨别便正在于此.真验三采用结构步调安排一、真验手段1. 掌握修坐战真止M文献的要领.2. 掌握利用if语句真止采用结构的要领.3. 掌握利用switch语句真止多分支采用结构的要领.4. 掌握try语句的使用.二、真验真质1. 供分段函数的值.用if语句真止,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值.解:M文献如下:运算截止有:f(-5)y =14>> f(-3)y =11>> f(1)y =2>> f(2)y =1>> f(2.5)y =>> f(3)y =5>> f(5)y =192. 输进一个百分造结果,央供输出结果等第A、B、C、D、E.其中90分~100分为A,80分~89分为B,79分~79分为C,60分~69分为D,60分以下为E.央供:(1) 分别用if语句战switch语句真止.(2) 输进百分造结果后要推断该结果的合理性,对于分歧理的结果应输出堕落疑息.解:M文献如下试算截止:score=88grade =Bscore=123过失:输进的结果没有是百分造结果3. 硅谷公司职工的人为估计要领如下:(1) 处事时数超出120小时者,超出部分加收15%.(2) 处事时数矮于60小时者,扣收700元.(3) 其余按每小时84元计收.试编程按输进的工号战该号职工的工时数,估计应收人为.解:M文献下4. 安排步调,完毕二位数的加、减、乘、除四则运算,即爆收二个二位随机整数,再输进一个运算标记,干相映的运算,并隐现相映的截止.解:M文献如下;运算截止例:a =38b =33输进一个运算符:^c =falsea =92b =40输进一个运算符:+c =1325. 修坐5×6矩阵,央供输出矩阵第n止元素.当n值超出矩阵的止数时,自动转为输出矩阵末尾一止元素,并给出堕落疑息.解:M文献如下:运算截止如下:输进一个5止6列矩阵A=[1 2 3 4 5 5;2 3 4 5 7 6;2 2 2 2 2 3;11 2 3 9 7 3;2 3 4 5 6 7]输进一正整数n=411 2 3 9 7 3输进一个5止6列矩阵A=[1 2 3 4 5 5;2 3 4 5 7 6;2 2 2 2 2 3;11 2 3 9 7 3;2 3 4 5 6 7]输进一正整数n=62 3 4 5 6 7ans =Error using ==> dispToo many input arguments.真验四循环结构步调安排一、真验手段1. 掌握利用for语句真止循环结构的要领.2. 掌握利用while语句真止循环结构的要领.3. 认识利用背量运算去代替循环支配的要领.二、真验真质1. 根据2222211116123nπ=++++,供π的近似值.当n分别与100、1000、10000时,截止是几?央供:分别用循环结媾战背量运算(使用sum函数)去真止.解:M文献如下:运止截止如下:K>> %循环结构估计pi值y=0;n=input('n=');for i=1:ny=y+1/i/i;endpi=sqrt(6*y)n=100pi =n=1000pi =n=10000pi =%背量要领估计Pi值n=input('n=');i=1./(1:n).^2;s=sum(i);pi=sqrt(6*s)n=100pi =n=1000pi =n=100002. 根据11113521yn=++++-,供:(1) y<3时的最大n值.(2) 与(1)的n值对于应的y值.解:M—文献如下:运止截止如下:K>> y=0;n=0;while y<3n=n+1;y=y+1/(2*n-1);endynif y>3n=n-1;endny =n =57n =563. 思量以下迭代公式:其中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文献如下:运算截止如下;请输进正数a=1请输进正数b=1x =r =r =s =请输进正数a=8请输进正数b=3x =r =r =s =0.0请输进正数a=10x =r =r =s =4. 已知供f1~f100中:(1) 最大值、最小值、各数之战.(2) 正数、整、背数的个数.解:M—文献以下是运算截止:max(f)=437763282635min(f)=-899412113528sum(f)=-742745601951c1=49c2=2c3=495. 若二个连绝自然数的乘积减1是素数,则称那二个边陲自然数是亲稀数对于,该素数是亲稀素数.比圆,2×3-1=5,由于5是素数,所以2战3是亲稀数,5是亲稀素数.供[2,50]区间内:(1) 亲稀数对于的对于数.(2) 与上述亲稀数对于对于应的所有亲稀素数之战.解:M文献:运算截止为:j =29s =23615真验五函数文献一、真验手段1. 明白函数文献的观念.2. 掌握定义战调用MATLAB函数的要领.二、真验真质1. 定义一个函数文献,供给定复数的指数、对于数、正弦战余弦,并正在下令文献中调用该函数文献.解:M文献如下:函数fushu.M文献:function [e,l,s,c] = fushu(z)%fushu 复数的指数,对于数,正弦,余弦的估计%e 复数的指数函数值%l 复数的对于数函数值%s 复数的正弦函数值%c 复数的余弦函数值e=exp(z);l=log(z);s=sin(z);c=cos(z);下令文献M:z=input('请输进一个复数z=');[a,b,c,d]=fushu(z)运算截止如下:z=input('请输进一个复数z=');[a,b,c,d]=fushu(z)请输进一个复数z=1+ia =b =c =d =2. 一物理系统可用下列圆程组去表示:从键盘输进m1、m2战θ的值,供a1、a2、N1战N2的值.其中g与9.8,输进θ时以角度为单位.央供:定义一个供解线性圆程组AX=B的函数文献,而后正在下令文献中调用该函数文献.解: M文献函数fc.M文献:function X= fc(A,B)%fc fc是供解线性圆程的函数%A A是已知矩阵的系数矩阵X=A\B;下令M文献:clc;m1=input('输进m1=');m2=input('输进m2=');theta=input('输进theta=');x=theta*pi/180;g=9.8;A=[m1*cos(x) -m1 -sin(x) 0m1*sin(x) 0 cos(x) 00 m2 -sin(x) 00 0 -cos(x) 1];B=[0;m1*g;0;m2*g];X=fc(A,B)运算截止:输进m1=1输进m2=1输进theta=30X =3. 一个自然数是素数,且它的数字位子通过任性对于换后仍为素数.比圆13是千万于素数.试供所有二位千万于素数.央供:定义一个推断素数的函数文献.解:M文献:function [p] = prime(p)% 输进p的范畴,找出其中的素数m=p(length(p));for i=2:sqrt(m)n=find(rem(p,i)==0&p~=i);p(n)=[];%将p中能被i整除,而却没有等于i的元素,即下标为n的元素剔除,其余的即为素数endp;下令文献:clc;p=10:99;p=prime(p); %找出10到99内的所有素数p=10*rem(p,10)+(p-rem(p,10))/10;%将p素数矩阵每个元素个位十位变更程序p=prime(p)%再对于对于换后的素数矩阵找出所有的素数运算截止:。
Matlab程序设计与应用第二版刘卫国课后实验答案教学提纲
M a t l a b程序设计与应用第二版刘卫国课后实验答案实验一:T1:%%第一小题z1=2*sin(85*pi/180)/(1+exp(2))%%第二小题x=[2,1+2i;-0.45,5];z2=1/2*log(x+sqrt(1+x.^2));z2%%第三小题a=-3.0:0.1:3.0;z3=1/2*(exp(0.3*a)-exp(-0.3*a)).*sin(a+0.3)+log((0.3+a)/2) %%第四题t=0:0.5:2.5z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t. ^2-1)+(t>=2&t<3).*(t.^2-2*t+1)T2:A=[12,34,-4;34,7,87;3,65,7]B=[1,3,-1;2,0,3;3,-2,7]disp ('A+6*B=');disp(A+6*B);disp('A-B+I=');disp(A-B+eye(3));disp('A*B=');disp(A*B);disp('A.*B=');disp(A.*B);disp('A^3=');disp(A^3);disp('A.^3=');disp(A.^3);disp('A/B=');disp(A/B);disp('B\A=');disp(B\A);disp('[A,B]='); disp([A,B]);disp('[A([1,3],:);B^2]=');disp([A([1,3],:);B^2]);T3:z=1:25;A=reshape(z,5,5)';B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11]; C=A*BD=C(3:5,2:3)T4-1:a=100:999;b=find(rem(a,21)==0);c=length(b)T4-2:a=input('请输入一个字符串:','s');b=find(a>='A'&a<='Z');a(b)=[];disp(a);实验二:T1:E=eye(3),R=rand(3,2),O=zeros(2,3),S=d iag([1,2]);A=[E,R;O,S]disp('A^2=');disp(A^2);disp('[E,R+RS;O,S^2]');B=[E,R+R*S;O,S^2]T2:H=hilb(5)P=pascal(5)Hh=det(H)Hp=det(P)Th=cond(H)Tp=cond(P)a=abs(Th-1);b=abs(Tp-1);if a>bdisp('帕萨卡矩阵P性能更好'); elseif a<b仅供学习与交流,如有侵权请联系网站删除谢谢2disp('希尔伯特矩阵H性能更好'); elsedisp('两个矩阵性能相同');endT3:a=1:25;A=reshape(a,5,5)disp('行列式的值:');disp(det(A));disp('矩阵的秩:');disp(rank(A));disp('矩阵的迹:');disp(trace(A));disp('矩阵的范数:');disp(norm(A));T4:A=[-29,6,18;20,5,12;-8,8,5][V,D]=eig(A)T5: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]'X1=A\BB(3)=0.53X2=A\Bdisp('系数矩阵A的条件数:');disp(cond(A));T6:a=1:25;A=reshape(a,5,5)disp('B1=sqrtm(A)');B1=sqrtm(A)disp('B2=sqrt(A)');B2=sqrt(A)disp('B1*B1');B1*B1disp('B2.*B2');B2.*B2 实验三:T1:x=-5.0:2:5.0for i=1:length(x);if (x(i)<0)&(x(i)~=-3)y(i)=x(i)^2+x(i)-6;elseif(x(i)>=0)&(x(i)<5)&(x(i)~=2)&(x(i)~=3 );y(i)=x(i)^2-5*x(i)+6;elsey(i)=x(i)^2-x(i)-1;endendyT2-if:s=input('please enter the score:');while (s<0||s>100)disp('the score is not reasonable');s=input('please enter the score:');endif (s>=90&s<=100);disp('A');elseif(s>=80&s<90);disp('B');elseif(s>=70&s<80);disp('C');elseif(s>=60&s<70);disp('D');elsedisp('E');endT2-switch:s=input('please enter the score:');while (s<0||s>100)disp('the score is not reasonable');s=input('please enter the score:');endswitch fix(s/10)case{9,10}disp('A');case{8}disp('B');仅供学习与交流,如有侵权请联系网站删除谢谢3case{7}disp('C');case{6}disp('D');case{0,1,2,3,4,5}disp('E');endT3:t=input('请输入工时time=');if t>120w=120*84+(t-120)*1.15*84;elseif t<60w=t*84-700;elsew=84*t;enddisp('应发工资为:');disp(w);T4:a=10+floor(rand(1)*89)b=10+floor(rand(1)*89)s=input('请输入+或-或*或/','s');while(s~='+'&&s~='-'&&s~='*'&&s~='/') disp('输入的符号错误,请重新输入');s=input('请输入+或-或*或/','s');endswitch scase{'+'}c=a+b;case{'-'}c=a-b;case{'*'}c=a*b;case{'/'}c=a/b;endc T5:A=rand(5,6)n=input('请输入n:');while (n<1)disp('输入的n有误,请重新输入'); n=input('请输入n:');endif n>5B=A(5,:)elseB=A(n,:)End实验四:T1:n=input('请输入n:');m=0;for i=1:n;m=m+1/i^2;endpii=sqrt(6*m)T1-2:n=input('请输入n:');m=1./(1:n).^2;s=sum(m);pii=sqrt(6*s)T2:n=1000;y=0;for i=1:n;y=y+1/(2*i-1);if y>=3disp('最大n值为:');i-1disp('对应的y值为:');y-1/(2*i-1)break;end仅供学习与交流,如有侵权请联系网站删除谢谢4endT3:format longa=input('请输入a:');b=input('请输入b:');x(1)=a/(1.0+b);i=1;x(2)=a/(x(i)+b); while (abs(x(i+1)-x(i))>0.00001&i<500) i=i+1;x(i+1)=a/(x(i)+b);endr1=(-b+sqrt(b^2+4*a))/2;r2=(-b-sqrt(b^2+4*a))/2;disp(['x',num2str(i+1),'=',num2str(x(i+1) ,8)]);disp(['x',num2str(i),'=',num2str(x(i),8)]); disp(['r1=',num2str(r1,8),',r2=',num2str(r 2,8)]);format shortT4:f(1)=1;f(2)=0;f(3)=1;i=4;while(i<=100)f(i)=f(i-1)-2*f(i-2)+f(i-3);i=i+1;endfmax=max(f)fmin=min(f)fsum=sum(f)fp=length(find(f>0))fn=length(find(f<0))f0=length(find(f==0))T5:j=0;s=0;for i=3:50m=i*(i-1)-1;if isprime(m)==1ms=s+m;j=j+1;endenddisp(['亲密数的对数:',num2str(j)]); disp(['所有亲密素数之和:',num2str(s)]);实验五:fn1:function f=fn1(n)f=n+10*log(n.^2+5);fn2:function f=fn2(n)f=0;for i=1:nf=f+i*(i+1);endfx:function f=fx(x)f=1./((x-2).^2+0.1)+1./((x-3).^4+0.01); T1:x=input('请输入一个复数:');fe=exp(x)flg=log(x)fsin=sin(x)fcos=cos(x)T2:m1=input('请输入m1:');m2=input('请输入m2:');t=input('请输入theta:');A=[m1*cos(t),-m1,-sin(t),0;m1*sin(t),0,...cos(t),0;0,m2,-sin(t),0;0,0,-cos(t),1] B=[0,m1*9.8,0,m2*9.8]'disp('[a1,a2,N1,N2]=');disp([A\B]');T3:j=1;n=1;k=1;for i=10:99 % 挑选出10~99中所有的素数if isprime(i)==1仅供学习与交流,如有侵权请联系网站删除谢谢5m(j)=i;j=j+1;endendfor t=1:length(m);s(n)=10*rem(m(t),10)+fix(m(t)/10); %挑选出的素数进行位置交换if isprime(s(n))==1 %再挑选出交换绝对素数r(k)=m(t);k=k+1;endn=n+1;enddisp(['所有两位绝对素数:',num2str(r)])T5:y1=fn1(40)/(fn1(30)+fn1(20)) %函数调用y2=fn2(40)/(fn2(30)+fn2(20))实验六:T1:x=linspace(0,2*pi,101);y=(0.5+3*sin(x)./(1+x.^2)).*cos(x); plot(x,y);T2:x=linspace(0,2*pi,100);y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(2,2,1);plot(x,y1,'r:',x,y2,'y-',x,y3,'b-.'); subplot(2,2,2);plot(x,y1,'r:');subplot(2,2,3);plot(x,y2,'y-'); subplot(2,2,4);plot(x,y3,'b-.');T2-3:x=linspace(0,2*pi,10);y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(3,4,1);bar(x,y1,'r');axis([0,7,0,40]); subplot(3,4,2);stairs(x,y1,'y');axis([0,7,0,40]); subplot(3,4,3);stem(x,y1,'b');axis([0,7,0,40]); subplot(3,4,4);fill(x,y1,'g');axis([0,7,0,40]); subplot(3,4,5);bar(x,y2,'r');axis([-1,7,-1,1]); subplot(3,4,6);stairs(x,y2,'y');axis([-1,7,-1,1]); subplot(3,4,7);stem(x,y2,'b');axis([-1,7,-1,1]); subplot(3,4,8);fill(x,y2,'g');axis([-1,7,-1,1]); subplot(3,4,9);bar(x,y3,'r');axis([0,7,-30,50]); subplot(3,4,10);stairs(x,y3,'y');axis([0,7,-30,50]); subplot(3,4,11);stem(x,y3,'b');axis([0,7,-30,50]); subplot(3,4,12);fill(x,y3,'g');axis([0,7,-30,50]);T3:x=linspace(-5,5,100);y=[];for x0=x;if x0<=0;y=[y,(x0+sqrt(pi))/exp(2)];elsey=[y,1/2*log(x0+sqrt(1+x0^2))]; endendsubplot(1,2,1);plot(x,y);仅供学习与交流,如有侵权请联系网站删除谢谢6for i=1:length(x)if x(i)<=0y(i)=(x(i)+sqrt(pi))/exp(2);elsey(i)=1/2*log(x(i)+sqrt(1+x(i)^2)); endendsubplot(1,2,2);plot(x,y);T4:a=input('请输入a:');b=input('请输入b:');n=input('请输入n:');theta=0:0.001:2*pi;y=a.*sin(b+n.*theta);polar(theta,y);T5:x=linspace(-5,5,21);y=linspace(0,10,31);[x,y]=meshgrid(x,y);z=cos(x).*cos(y).*exp(-sqrt(x.^2+y.^2)/4);subplot(1,2,1);surf(x,y,z);subplot(1,2,2);contour3(x,y,z);T6:s=0:pi/2;t=0:3*pi/2;[s,t]=meshgrid(s,t);x=cos(s).*cos(t);y=cos(s).*sin(t);z=sin(s);surf(x,y,z);shading interp;实验八:T1:A=rand(1,30000); disp('均值为:');mean(A)disp('标准方差为:');std(A)disp('最大元素为:');max(A)disp('最小元素为:');min(A)k=find(A>0.5);b=length(k);disp('大于0.5的随机数个数占总数的百分比:');sprintf('%f%%', b/300)T2:P=45+50*rand(100,5)disp('最高分及序号:');[Y,U]=max(P,[],1)disp('最低分及序号:');[Y1,U1]=min(P,[],1)disp('每门课平均分:');mean(P,1)disp('每门课的标准方差:');std(P,0,1)s=sum(P,2);disp('总分最高分:');[Y2,U2]=max(s,[],1)disp('总分最低分:');[Y3,U3]=min(s,[],1)[zcj,xsxh]=sort(s,1,'descend') %descend 降序T3:仅供学习与交流,如有侵权请联系网站删除谢谢7h=6:2: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]; t=6.5:2:17.5;T1=interp1(h,t1,t,'spline')T2=interp1(h,t2,t,'spline')T4:x=1:10:101;y=log10(x);p=polyfit(x,y,5)x1=1:0.01:101;y1=log10(x1);y2=polyval(p,x1);plot(x1,y1,'r-',x1,y2,'b-.');T5:P1=[1,2,4,0,5];P2=[0,0,0,1,2];P3=[0,0,1,2,3];P4=conv(P2,P3);sp1=length(P1);sp2=length(P4);P=[zeros(1,sp2-sp1),P1]+P4x=roots(P)A=[-1,1.2,-1.4;0.75,2,3.5;0,5,2.5];Ax=polyval(P,A)AA=polyvalm(P,A)实验九:T1:f=inline('det([x x^2 x^3;1 2*x 3*x^2;0 2 6*x])');i=1;x=1;while x<=3.01g(i)=f(x);i=i+1;x=x+0.01;enddx=diff(g)/0.01;dx(1)dx(101)dx(length(g)-1)T2:f1=inline('sqrt(cos(t.^2)+4*sin(2*t).^2+ 1)') f2=inline('log(1+x)./(1+x.^2)')I1=quad(f1,0,2*pi)I2=quad(f2,0,2*pi)T3:A=[6,5,-2,5;9,-1,4,-1;3,4,2,-2;3,-9,0,2]; B=[-4,13,1,11]';x1=A\B[L,U]=lu(A);x2=U\(L\B)[Q,R]=qr(A);x3=R\(Q\B)fun:function F=fun(X);x=X(1);y=X(2);z=X(3);F(1)=sin(x)+y^2+log(z)-7;F(2)=3*x+2^y-z^3+1;F(3)=x+y+z-5;T5:f=inline('3*x+sin(x)-exp(x)');fzero(f,1.5)X=fsolve('fun',[1 11]',optimset('Display','off'))实验十:T1:x=sym('6');y=sym('5');z=(x+1)/(sqrt(3+x)-sqrt(y))T2:syms x y;t=sym('5135');factor(x^4-y^4)factor(t)T3:syms beta1 beta2 x;simplify(sin(beta1)*cos(beta2)-cos(beta1)*sin(beta2))simplify((4*x^2+8*x+3)/(2*x+1))T4:syms a b c d e f g h k;p1=[0,1,0;1,0,0;0,0,1];p2=[1,0,0;0,1,0;1,0,1];仅供学习与交流,如有侵权请联系网站删除谢谢8A=[a,b,c;d,e,f;g,h,k];B=p1*p2*AB1=inv(B)B1*B;tril(B)det(B)T5:syms x t a yf1=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/sin(x)^3;limit(f1,x,0) %(1)f2=(sqrt(pi)-sqrt(acos(x)))/sqrt(x+1); limit(f2,x,-1,'right') %(2)f3=(1-cos(2*x))/x;diff(f3,x,1) %(3)diff(f3,x,2)A=[a^x,t^3;t*cos(x),log(x)];diff(A,x,1) &(4)diff(A,t,2)diff(diff(A,x,1),t,1)f5=(x^2-2*x)*exp(-x^2-y^2-x*y);yx=-diff(f5,x,1)/diff(f5,y,1) %(5) fxy=diff(diff(f5,x,1),y,1)x=sym('0');y=sym('1');eval(fxy)T6:x=sym('x');f1=1/(1+x^4+x^8);int(f1,x)f2=1/(asin(x))^2/sqrt(1-x^2);int(f2,x)f3=(x^2+1)/(x^4+1);int(f3,x,0,inf)f4=exp(x)*(1+exp(x))^2;int(f4,x,0,log(2))实验十一:T1:syms n x ;S1=symsum(1/(2*n-1),n,1,10)S2=symsum(n^2*x^(n-1),n,1,inf)S3=symsum(n^2/5^n,n,1,inf)T2:x=sym('x');f=log(x);taylor(f,x,6,1)T3:x1=solve('log(1+x)-5/(1+sin(x))=2')x2=solve('x^2+9*sqrt(x+1)-1=0')x3=solve('3*x*exp(x)+5*sin(x)-78.5=0') [x4,y4]=solve('sqrt(x^2+y^2)-100=0','3*x+5*y-8=0')T4:dsolve('D2y+4*Dy+29*y=0','y(0)=0','D y(0)=15','x')T5:[x,y,z]=dsolve('Dx=2*x-3*y+3*z','Dy=4*x-5*y+3*z','Dz=4*x-4*y+2*z','t')仅供学习与交流,如有侵权请联系网站删除谢谢9。
Matlab程序设计与应用第二版刘卫国课后实验答案
Matlab程序设计与应用第二版刘卫国课后实验答案实验一: C=A*BT1: D=C(3:5,2:3)T4-1: %%第一小题z1=2*sin(85*pi/180)/(1+exp(2)) a=100:999; %%第二小题b=find(rem(a,21)==0); x=[2,1+2i;-0.45,5]; c=length(b)z2=1/2*log(x+sqrt(1+x.^2)); T4-2:z2 a=input('请输入一个字符串:','s'); %%第三小题b=find(a>='A'&a<='Z'); a=-3.0:0.1:3.0; a(b)=[];z3=1/2*(exp(0.3*a)-exp(-0.3*a)).*sin(a+0.3)+ldisp(a);og((0.3+a)/2) 实验二:%%第四题 T1:t=0:0.5:2.5 E=eye(3),R=rand(3,2),O=zeros(2,3),S=diag([1,2z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t]);>=2&t<3).*(t.^2-2*t+1) A=[E,R;O,S]disp('A^2='); T2: disp(A^2); A=[12,34,-4;34,7,87;3,65,7]disp('[E,R+RS;O,S^2]'); B=[1,3,-1;2,0,3;3,-2,7] B=[E,R+R*S;O,S^2] disp ('A+6*B='); T2:disp(A+6*B); H=hilb(5)disp('A-B+I='); P=pascal(5) disp(A-B+eye(3)); Hh=det(H)disp('A*B='); Hp=det(P)disp(A*B); Th=cond(H) disp('A.*B='); Tp=cond(P) disp(A.*B);a=abs(Th-1); disp('A^3='); b=abs(Tp-1); disp(A^3); if a>bdisp('A.^3='); disp('帕萨卡矩阵P性能更好'); disp(A.^3); elseif a<b disp('A/B='); disp('希尔伯特矩阵H性能更好'); disp(A/B); else disp('B\A='); disp('两个矩阵性能相同'); disp(B\A); enddisp('[A,B]='); T3:disp([A,B]); a=1:25;disp('[A([1,3],:);B^2]='); A=reshape(a,5,5) disp([A([1,3],:);B^2]); disp('行列式的值:'); T3: disp(det(A)); z=1:25; disp('矩阵的秩:');A=reshape(z,5,5)'; disp(rank(A)); B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11]; disp('矩阵的迹:');1disp(trace(A)); enddisp('矩阵的范数:'); if (s>=90&s<=100);disp('A'); disp(norm(A));T4: elseif(s>=80&s<90); A=[-29,6,18;20,5,12;-8,8,5] disp('B');[V,D]=eig(A) elseif(s>=70&s<80); T5: disp('C');A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6] elseif(s>=60&s<70);B=[0.95,0.67,0.52]' disp('D'); X1=A\B elseB(3)=0.53 disp('E'); X2=A\B enddisp('系数矩阵A的条件数:'); T2-switch:disp(cond(A)); s=input('please enter the score:');T6: while (s<0||s>100) a=1:25; disp('the score is not reasonable');A=reshape(a,5,5) s=input('please enter the score:');disp('B1=sqrtm(A)'); endB1=sqrtm(A) switch fix(s/10) disp('B2=sqrt(A)'); case{9,10}B2=sqrt(A) disp('A');disp('B1*B1'); case{8}B1*B1 disp('B');disp('B2.*B2'); case{7}B2.*B2 disp('C');实验三: case{6}T1: disp('D');x=-5.0:2:5.0 case{0,1,2,3,4,5} for i=1:length(x); disp('E');if (x(i)<0)&(x(i)~=-3) endy(i)=x(i)^2+x(i)-6; T3:elseif t=input('请输入工时time=');(x(i)>=0)&(x(i)<5)&(x(i)~=2)&(x(i)~=3); if t>120y(i)=x(i)^2-5*x(i)+6; w=120*84+(t-120)*1.15*84;else elseif t<60y(i)=x(i)^2-x(i)-1; w=t*84-700;end elseend w=84*t; y endT2-if: disp('应发工资为:'); s=input('please enter the score:'); disp(w);while (s<0||s>100) T4:disp('the score is not reasonable'); a=10+floor(rand(1)*89) s=input('please enter the score:'); b=10+floor(rand(1)*89)2s=input('请输入+或-或*或/','s'); for i=1:n;while(s~='+'&&s~='-'&&s~='*'&&s~='/') y=y+1/(2*i-1);if y>=3 disp('输入的符号错误,请重新输入');s=input('请输入+或-或*或/','s'); disp('最大n值为:'); end i-1switch s disp('对应的y值为:');case{'+'} y-1/(2*i-1)c=a+b; break;case{'-'} endend c=a-b;T3: case{'*'}c=a*b; format longa=input('请输入a:'); case{'/'}b=input('请输入b:'); c=a/b;x(1)=a/(1.0+b);i=1;x(2)=a/(x(i)+b);end while (abs(x(i+1)-x(i))>0.00001&i<500)i=i+1; cx(i+1)=a/(x(i)+b); T5:A=rand(5,6) endn=input('请输入n:'); r1=(-b+sqrt(b^2+4*a))/2;r2=(-b-sqrt(b^2+4*a))/2; while (n<1)disp(['x',num2str(i+1),'=',num2str(x(i+1),8)]); disp('输入的n有误,请重新输入');n=input('请输入n:'); disp(['x',num2str(i),'=',num2str(x(i),8)]);end disp(['r1=',num2str(r1,8),',r2=',num2str(r2,8)])if n>5 ;B=A(5,:) format shortelse T4:B=A(n,:) f(1)=1;f(2)=0;f(3)=1;i=4; End while(i<=100) 实验四:f(i)=f(i-1)-2*f(i-2)+f(i-3);T1: i=i+1;n=input('请输入n:'); endm=0; fmax=max(f)for i=1:n; fmin=min(f)m=m+1/i^2; fsum=sum(f)end fp=length(find(f>0)) pii=sqrt(6*m) fn=length(find(f<0)) T1-2: f0=length(find(f==0)) n=input('请输入n:'); T5:m=1./(1:n).^2; j=0;s=0;s=sum(m); for i=3:50pii=sqrt(6*s) m=i*(i-1)-1; T2: if isprime(m)==1 n=1000;y=0; m3s=s+m; s(n)=10*rem(m(t),10)+fix(m(t)/10); %j=j+1; 挑选出的素数进行位置交换if isprime(s(n))==1 %再挑选出交换 endend 绝对素数disp(['亲密数的对数:',num2str(j)]); r(k)=m(t);disp(['所有亲密素数之和:',num2str(s)]); k=k+1;实验五: endfn1: n=n+1;function f=fn1(n) endf=n+10*log(n.^2+5); disp(['所有两位绝对素数:',num2str(r)]) fn2: T5: function f=fn2(n) y1=fn1(40)/(fn1(30)+fn1(20)) %函数调用 f=0;y2=fn2(40)/(fn2(30)+fn2(20)) for i=1:n 实验六:f=f+i*(i+1); T1:end x=linspace(0,2*pi,101); fx: y=(0.5+3*sin(x)./(1+x.^2)).*cos(x); function f=fx(x) plot(x,y);f=1./((x-2).^2+0.1)+1./((x-3).^4+0.01); T2:T1: x=linspace(0,2*pi,100); x=input('请输入一个复数:'); y1=x.^2;fe=exp(x) y2=cos(2*x);flg=log(x) y3=y1.*y2;fsin=sin(x) subplot(2,2,1);fcos=cos(x) plot(x,y1,'r:',x,y2,'y-',x,y3,'b-.'); T2: subplot(2,2,2);m1=input('请输入m1:'); plot(x,y1,'r:');m2=input('请输入m2:'); subplot(2,2,3);t=input('请输入theta:'); plot(x,y2,'y-');A=[m1*cos(t),-m1,-sin(t),0;m1*sin(t),0,... subplot(2,2,4);cos(t),0;0,m2,-sin(t),0;0,0,-cos(t),1] plot(x,y3,'b-.');B=[0,m1*9.8,0,m2*9.8]' T2-3:disp('[a1,a2,N1,N2]='); x=linspace(0,2*pi,10); disp([A\B]'); y1=x.^2;T3: y2=cos(2*x);j=1;n=1;k=1; y3=y1.*y2;for i=10:99 % 挑选出10~99中所subplot(3,4,1);有的素数 bar(x,y1,'r');axis([0,7,0,40]);if isprime(i)==1 subplot(3,4,2);m(j)=i; stairs(x,y1,'y');axis([0,7,0,40]);j=j+1; subplot(3,4,3);end stem(x,y1,'b');axis([0,7,0,40]); end subplot(3,4,4);for t=1:length(m); fill(x,y1,'g');axis([0,7,0,40]);4subplot(3,4,5); theta=0:0.001:2*pi; bar(x,y2,'r');axis([-1,7,-1,1]); y=a.*sin(b+n.*theta);polar(theta,y); subplot(3,4,6);stairs(x,y2,'y');axis([-1,7,-1,1]); T5:subplot(3,4,7); x=linspace(-5,5,21); stem(x,y2,'b');axis([-1,7,-1,1]); y=linspace(0,10,31); subplot(3,4,8); [x,y]=meshgrid(x,y);fill(x,y2,'g');axis([-1,7,-1,1]); z=cos(x).*cos(y).*exp(-sqrt(x.^2+y.^2)/4);subplot(3,4,9); subplot(1,2,1); bar(x,y3,'r');axis([0,7,-30,50]); surf(x,y,z); subplot(3,4,10); subplot(1,2,2);stairs(x,y3,'y');axis([0,7,-30,50]); contour3(x,y,z); subplot(3,4,11); T6:stem(x,y3,'b');axis([0,7,-30,50]); s=0:pi/2;subplot(3,4,12); t=0:3*pi/2; fill(x,y3,'g');axis([0,7,-30,50]); [s,t]=meshgrid(s,t); T3: x=cos(s).*cos(t); x=linspace(-5,5,100);y=cos(s).*sin(t); y=[]; z=sin(s);for x0=x; surf(x,y,z);if x0<=0; shading interp;y=[y,(x0+sqrt(pi))/exp(2)]; 实验八:else T1:y=[y,1/2*log(x0+sqrt(1+x0^2))]; A=rand(1,30000);end disp('均值为:');end mean(A)subplot(1,2,1); disp('标准方差为:'); plot(x,y); std(A)disp('最大元素为:');max(A)disp('最小元素为:'); for i=1:length(x) min(A)if x(i)<=0 k=find(A>0.5);y(i)=(x(i)+sqrt(pi))/exp(2); b=length(k);else disp('大于0.5的随机数个数占总数的百分y(i)=1/2*log(x(i)+sqrt(1+x(i)^2)); 比:');end sprintf('%f%%', b/300) end T2:subplot(1,2,2); P=45+50*rand(100,5) plot(x,y); disp('最高分及序号:'); T4: [Y,U]=max(P,[],1) a=input('请输入a:'); disp('最低分及序号:');b=input('请输入b:'); [Y1,U1]=min(P,[],1) n=input('请输入n:'); disp('每门课平均分:');5mean(P,1) i=i+1;disp('每门课的标准方差:'); x=x+0.01;end std(P,0,1)s=sum(P,2); dx=diff(g)/0.01; disp('总分最高分:'); dx(1)[Y2,U2]=max(s,[],1) dx(101)disp('总分最低分:'); dx(length(g)-1) [Y3,U3]=min(s,[],1) T2:[zcj,xsxh]=sort(s,1,'descend') %descend降f1=inline('sqrt(cos(t.^2)+4*sin(2*t).^2+1)')序 f2=inline('log(1+x)./(1+x.^2)')T3: I1=quad(f1,0,2*pi) h=6:2:18; I2=quad(f2,0,2*pi)t1=[18.0,20.0,22.0,25.0,30.0,28.0,24.0]; T3:t2=[15.0,19.0,24.0,28.0,34.0,32.0,30.0]; A=[6,5,-2,5;9,-1,4,-1;3,4,2,-2;3,-9,0,2];t=6.5:2:17.5; B=[-4,13,1,11]'; T1=interp1(h,t1,t,'spline') x1=A\B T2=interp1(h,t2,t,'spline') [L,U]=lu(A); T4: x2=U\(L\B)x=1:10:101; [Q,R]=qr(A); y=log10(x); x3=R\(Q\B)p=polyfit(x,y,5) fun:x1=1:0.01:101; function F=fun(X); y1=log10(x1); x=X(1);y2=polyval(p,x1); y=X(2);plot(x1,y1,'r-',x1,y2,'b-.'); z=X(3);T5: F(1)=sin(x)+y^2+log(z)-7; P1=[1,2,4,0,5]; F(2)=3*x+2^y-z^3+1; P2=[0,0,0,1,2]; F(3)=x+y+z-5; P3=[0,0,1,2,3]; T5:P4=conv(P2,P3); f=inline('3*x+sin(x)-exp(x)');sp1=length(P1); fzero(f,1.5) sp2=length(P4); X=fsolve('fun',[1 1 1]',optimset('Display','off'))P=[zeros(1,sp2-sp1),P1]+P4 实验十:x=roots(P) T1:A=[-1,1.2,-1.4;0.75,2,3.5;0,5,2.5]; x=sym('6'); Ax=polyval(P,A)y=sym('5'); AA=polyvalm(P,A) z=(x+1)/(sqrt(3+x)-sqrt(y)) 实验九: T2: T1: syms x y;f=inline('det([x x^2 x^3;1 2*x 3*x^2;0 2 t=sym('5135'); 6*x])'); factor(x^4-y^4) i=1;x=1; factor(t)while x<=3.01 T3:g(i)=f(x); syms beta1 beta2 x;6simplify(sin(beta1)*cos(beta2)-cos(beta1)*sinsyms n x ;(beta2)) S1=symsum(1/(2*n-1),n,1,10)S2=symsum(n^2*x^(n-1),n,1,inf) simplify((4*x^2+8*x+3)/(2*x+1)) T4: S3=symsum(n^2/5^n,n,1,inf) syms a b c d e f g h k; T2:p1=[0,1,0;1,0,0;0,0,1]; x=sym('x');p2=[1,0,0;0,1,0;1,0,1]; f=log(x);A=[a,b,c;d,e,f;g,h,k]; taylor(f,x,6,1)B=p1*p2*A T3:B1=inv(B) x1=solve('log(1+x)-5/(1+sin(x))=2') B1*B;x2=solve('x^2+9*sqrt(x+1)-1=0') tril(B) x3=solve('3*x*exp(x)+5*sin(x)-78.5=0')det(B) [x4,y4]=solve('sqrt(x^2+y^2)-100=0','3*x+5*y-T5: 8=0')syms x t a y T4:f1=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/sin(x)dsolve('D2y+4*Dy+29*y=0','y(0)=0','Dy(0)=15'^3; ,'x')limit(f1,x,0) %(1) T5:f2=(sqrt(pi)-sqrt(acos(x)))/sqrt(x+1); [x,y,z]=dsolve('Dx=2*x-3*y+3*z','Dy=4*x-5*y+limit(f2,x,-1,'right') %(2) 3*z','Dz=4*x-4*y+2*z','t') f3=(1-cos(2*x))/x;diff(f3,x,1) %(3)diff(f3,x,2)A=[a^x,t^3;t*cos(x),log(x)];diff(A,x,1) &(4)diff(A,t,2)diff(diff(A,x,1),t,1)f5=(x^2-2*x)*exp(-x^2-y^2-x*y);yx=-diff(f5,x,1)/diff(f5,y,1) %(5)fxy=diff(diff(f5,x,1),y,1)x=sym('0');y=sym('1');eval(fxy)T6:x=sym('x');f1=1/(1+x^4+x^8);int(f1,x)f2=1/(asin(x))^2/sqrt(1-x^2);int(f2,x)f3=(x^2+1)/(x^4+1);int(f3,x,0,inf)f4=exp(x)*(1+exp(x))^2;int(f4,x,0,log(2)) 实验十一:T1:7。
Matlab程序设计与应用第二版刘卫国课后实验答案
实验一:T1:%%第一小题z1 =2*sin( 85*pi/1 80) /(1+exp(2 )) %%第二小题x=[2 ,1+2i;- 0、45, 5];z2=1/2*log(x+s qr t(1+x、人2));z 2 %%第三小题a =—3、0:0、1:3、0;z3=1 /2 * (ex p (0、3*a)- e xp (-0、3 *a)卜*sin(a+0、3)+log( (0、3 +a) /2)%%第四题9, 7, 0; 4,1 3,11] ; C =A* BD =C(3:5, 2 : 3)T4-1:a =100: 9 99;b=fi nd( r e m (a,21) ==0 );c=1 ength(b )T4—2:a = in p Ute请输入一个字符串:',‘ sO ;b = find (a〉= A/ &a〈='ZO ;a( b)=[];disp( a) ;实验二:t =0 :0、5 :2、5z 4=( t>=0 & t〈 1 )、*( t、人2) +(t>= 1&t<2)、* (t、人2 —1) +(t〉=2&t<3 )、* (t、人2—2 * t+ 1)T2:A =[12 , 3 4,— 4;34, 7, 8 7; 3 ,65,7]B = [ 1 , 3,— 1;2, 0, 3;3, -2,7]disp ( 'A +6* B=') ;di sp( A+6* B);disp( A'—B+ I=');dis p(A-B+eye(3));dis p('A*B= ');dis p(A*B);d isp( 'A、*B =');disp( A、*B) ;d isp ('AG ';disp (A 人3);disp ('A、人3=');di sp (A、人3);d isp('A/B=') ;di sp(A/B) ;disp ( '\AB=' ) ;dis p (B\A);disp(/[A,B]=');di sp([A,B] );d i s p ( ' : A([1,3 ],: );B^2]=');d i sp ([A (: 1,3],:)砂2]);T3:z=1 :25;A=res hape (z, 5, 5) ';B= [3, 0, 16; 17,—6 ,9;0 ,23, —4;T1 :E=eye(3), R=rand(3, 2) ,O=zero s(2,3), S= dia g ([1, 2]);A=[E,R;O,S]disp (A^2=');di s p (A 2);disp('[E ,R +RS O, S^2:');B=[ E, R+ R*S; O,S 人2:T2:H=hi 1 b(5)P=pasc al (5 )H h=de t( H)Hp=de t(P)Th=co nd( H)Tp =co nd (P)a =ab s (Th- 1 );b = abs ( T p - 1);i f a > bdisp ('帕萨卡矩阵P 性能更好') ;e1s e i fa<bdisp (/希尔伯特矩阵H 性能更好' );elsedis P C两个矩阵性能相同');en dT3:a=1: 25;A=res ha pe(a,5,5)dis p('行列式得值:');disp(de t (A));dis p( '矩阵得秩:');disp( rank(A ));d i s p(' 矩阵得迹 :' ); disp(tr ace( A)); disp ( '矩阵得范数: )); dis p(nO rm(A) ); T4:A=[-2 9, 6, 18;20,5 ,12 ;——8,8, 5] [V,D] =eig (A) T5:A=[ 1/2, 1/3, 1/ 4 ;1/3, 1/ 4, 1/5; 1/4, 5, 1/6]B= : 0、9 5,0、6 7, 0、5 2 ]' X1=A \B B ( 3) =0、 53 X2=A\Bdis p ('系数矩阵 A 得条件数:/); disp(con d(A)) ;T6:disp('the scOr e is not reas ona b le));s=i n p ut( / pie as e en tercore: /) ; endi f (s>= 90&S < = 10 0);d isp( 'A');el s eif(s > = 8 0 & s <90);d isp()B/) ;e1 se if(s 〉 =70&sV 80);di sp( ) C));elseif (s> = 60 & sV 70);dis p( 'D'); el s edis p('E') ;endT 2- switch :a=1:25; A =r e sha pe ( a, 5,5 ) di sp( ' B1=sqrtm)('A); B 1=sq r t m (A) disp( B2 =sq rt( A ) ‘); B2= sq r t(A) di sp( 'B1*B 1'); B1* B1 disp (/ B2、 *B2) ; B2、 *B2 实验三 : T1: X =——5、 0:2: 5、0 : length(X) ; (x (i) <0) &(x(i) ~= -3) yel s ei & (x(i)〜=2) y(i ) else y (i)=x(i)人2 —x( i)-1 ;endfor i=1 if (i) = x( i)八 2 +x (i) —6; f (x(i)>=0)&(x(i)V5)& (x (i )〜=3);=x(i)A2 — 5* x(i)+6; end s=input ('p lease en ter ');whi 1 e (s < 0| | s 〉disp ( 'the reasonab1 e' );s=input('p 1 ease re:' ); end switc h fix(s/1 0 ) cas e{9, 1 0}disp(' A'); case{8} di s p CE '); c ase{ 7} d isp ('C ' case {6} dis p(' D'); ca se{ 0, d isp(' E/ e nd T 3: t=inp ut i ft>120 SCO re : );100) scor en 1, 2,3, 4,5});'请输入工时 s nO tt h e sc o me=');y T2- if: s =i npu t(' pie a se ent er the s c ore:,);w=120 *84+(t-120) * 1、 15* 84;elseif t < 60 w =t * 8 4 -701/the senden delse w= 8 4*t; pii=sq T1—2: rt(6 *m)end d isp ('应发工资为:’); di sp(w); T 4: a=10 +f1 oor(rand(1)* 89) b =1 0 + f loor( ra nd (1) * 89) s=inp ut (/ 请输入 + 或一或 * 或 /' , ' s'); w hi 1 e ( s 〜='+ ' & s 〜-—,&& s 〜-* '&&s~ =' /') d isp ('输入得符号错误, 请重新输入 ') ; s=inp ut (/ 请输入 + 或-或*或/' , 's'); end switch s case{ ' +' c=a + b;c ase{ '—'} c=a —b ; ca se{'* ' c=a* b; ca se{ ' / '} c =a/b ; t(/请输入 n : (1 : n)、人 2; s=sum( m ); pii=sq rt(6 *s) T2:n=inpum=1 、 / n=1 0 00;y=0; for i=1 : n;y = y+ 1/ (2 * i —1if end T 3:endc T5:A = n=inp u t('请输入 n :'); whi 1 e (n <1) d isp ('输入得n 有误,请重新输入/ ); n=i npu t ('请输入 n:'); rand(5,6) if n >5 B=A ( 5, :) eIse B = A(n,:) E nd 实验四 :T1: n=in p ut (/ 请输入 n :'); m =0; for i=1 : n; m=m+1/iA 2;'););y >= 3d isp ( ' 最大 n i — 1disp ('对应得 值为:');y 值为 :' ); y -1/( 2*i-1) break;dt a =in put('请输入 a:'); b =inp ut ('请输入 b:');x (1)= a/(1、0 +b) ; i = 1;x (2 +b) ; whil e (a b s (x (i+ 1) — x(i))> 1& i 〈 50 0) for m Ion g i =i+1 ;x(i+1)= a/(x (i) + b); endr 仁(—b+s qrt(b 人 2+4*a)) /2; r2 =( -b — s qr t( b^ 2+ 4 *a)) )=a / (x(i) 0、00 0 0d is p ([' x ' ,nm 2st r (i+ 1 ), n um2s t r(x( i+1), 8)] );disp (['x',num 2 str( i),'=',num 2str (x( i),8 )]);di sp(['r1=',nu m2s tr( r1,8),', r2=', num2str(r 2,8 )]); fo r mat short T4:f(1 )=1;f( 2)=0;f(3 )=1 ;i=4; w h il e (i<= 10 0)f(i) =f( i —1 )-2* f( i —2) +f( i —3 ); i=i+1;f m a x= max (f )fmin = min (f) fs um=s um(f) fp= 1 ength(f in d( f> 0)) fn=length (fin d (fv0 )) fO=lengt h( f i nd (f= =0)) T5:j =0; s= 0;for i=3:50m=i*( i-1)—1;i f i s prime (m)= =1s = s +m ;j =j +l;endendd i sp(['亲密数得对数:',nu m 2s tr (j):); dis p (['所有亲密素数之与:',n um2str( s )] );实验五:f n1: func t ion f = fn1 ( n)f= n +10 * l o g( n、人2 +5); fn2:f un ctio n f=f n2( n) f = 0;f or i= l: n nction f=fx ( x)/ ((x— 2)、八 2 + 0、1) +1、/ ((x—3 )、4+0、0 1);Tl :x =in p ut('请输入一个复数:');fe =exp (x)f lg= log( x) fsin=sin( x) f co s=cos(x)T2:m 1=in p ut ('请输入m 1/);m2=input ()请输入m 2:'; t=input ('请输入th et a:));A=[m1*cos(t ), -m1,-si n(t), 0;m 1 * si n(t), 0 ,、、、co s( t) , 0 ;0,m2, —sin (t), 0; 0, 0, —C o s(t) ,1]B= [0, m1 * 9、8, 0,m2dis p('[ al ,a2 ,N 1,N2: d i sp([A\B :';T 3: j=1 ; n= l;k =1;for i=10:99 中所有得素数if isprime(i)==1m(j)=i;j=j+1;endendf o r t=1:le n gth( m);s( n)=l 0* r em(m(t ), 10)+fix(m (t )/10); %挑选出得素数进行位置交换if i sp rime(s(n)) = = 1%再挑选出交换绝对素数r( k)= m(t);k=k+l ;endn=n+ l ;enddisp (['所有两位绝对素数:',num2str (r) ])T 5:y 1=f n 1 ( 4 0 ) /(f n 1(3 0 ) +fn1( 2 0 )) %函数调用y2 =f n2(40)/( fn 2( 30)+fn2 (20))实验六:T1: x=linspa ce (0, 2*pi,101 );y=(0、5+ 3* sin(x)、/ (l + x、人2))、* c os ( x) ;plot( x, y) ;T2: x=1in sp ace(0, 2*p i,10 0);y1=x、人2;y2=cos( 2*x);y3 =y1 、*y2 ;subplot(2,2, 1);plot(x,y1,r':',x,y2, 'y-', x, y3, 'b -、en f=f +i * (i + 1); dfx:fu f=1 、*9、8]'=/ );%挑选出1 0 ~99sub pl o t(2, 2,2) ; el se pl ot(X,y 1,'r:'); y =[y,1 /2 *l og(x0+sqr t(1 s u b plot ( 2,2,3); + x 0 人 2))]; p lot(x,y2, ' -y'); e nd subplot(2 ,2, 4); en d pl ot( x,y 3, 'b —、 '); subplot (1, 2,1); T 2-3 : pl ot(X, y); x=lin spa ce(0 ,2*pi,1 0 ); fo r i =1:l ength( x) y 仁X 、人2 ; if X(i) <=0y2 =cos(2* x); y(i)= (x (i)+sq rt( pi )) / e x p y 3 = y1、*y2 ; (2 ); sub plot (3, 4,1);else b ar( x, y1,'r ');axis( [0, 7 ,0, 40:); y( i) =1/2 *l og(x (i)+sqr s ub pl ot(3, 4 ,2); t (1+x(i) A2)); stairs(x, y1,'y ') ;aX is( [0,7,0, 40]); end subp lo t(3, 4, 3);e nd stem(x, y1,b' ') ;aX is([0,7 ,0 ,40]); subp lot(1,2, 2); '); y =[y,(xO+sqrt(pi)) /exp( 2)]; su bp l 0 t (3,4, 4);fill( x,y1, 'g ') ;axis ([0, 7,0 ,40]) ; sub plot( 3, 4,5);bar(x, y2,'r' );ax(i[s —1,7,—1, 1:) subplot( 3, 4, s tair s(X ,y2, ' 1:);subpl ot (3, 4,7);ste m( x, y2, 'b )'1: ); sub pl ot( 3,4,8);fil l(X,y 2,'g '); sub p lot (3 ,4, 9); bar (x,y3,'r') ;aXi s([0,7 ,-30,50]) ; subplot (3, 4,10 );sta irs(x,y3, ')' ;yaxi s([0, 7,-30 ,50:); su bplot(3 ,4, 11);s tem( x,y3 ,'b') ;axi sub pl o t(3,4 ,12); fill(x,y3,'g '); 50]);T3: 6); y);'axis([—1, 7,-1, ;a xis (:-l ,7, - 1, axi s (:-1,7,-1 ,1:); s ([0,7, -30,5 0:);a x is ( [ 0, 7 ,-30,x=li nsp ace( -5,5,1 y=[:; for X0 =x ; i f x0〈 =0;0 0); plo t (x, y );T4:a=i n pu t C 请输入 a:'); b=i np ut ('请输入 b: / ); n= i npu t ('请输入 n :');t he ta=0: 0、0 0 1 :2*p i; y=a 、 *sin(b+n 、 *theta) ; polar(thet a,y); T5: X =lin s pace( —5 ,5, 2 1); y= l in s pace(0,10,3 1); :x, y : =me s hg rid (x,y); z =cos(x)、*c os (y)、* exp( — sq r t ( x 、 人2 + y 、人 2) /4) s u bp lot (1, surf( x,y,z): sub p l o t(1, co ntour3(x,y, T6:s=0:pi /2; t=0:3*pi/2; [s,t : =mes hgri d(s,t) ;x= c os(s)、* c os (t );y= c os ( s)、* s i n (t); z=sin( s) ; s urf(X ,y, z);2, 1); 2, 2);z);s h a d in g interp ;实验八:T1:?A=rand(1, 30000);dis p ('均值为:') ;mean (A)di sp('标准方差为:/);s td ( A)di s p('最大元素为:');ma x( A)d i s P C最小元素为:');min(A)k=find ( A〉0、5) ; b= le ngd h( k);disp ('大于0、5 得随机数个数占总数得百分比:');sp rintf ('% f % % , b / 3 0 0 )T2: ?P =45+50* ran d(100, 5) disp('最高分及序号:/ );[Y,U:=max(P,[:,1) disp ('最低分及序号: ' );[Y1, U1:= min(P,[:,1)di sp ('每门课平均分:') ;mean( P,1)di sp( '每门课得标准方差:');std(P ,0, 1)s=sum(P,2) ;d i s p( '总分最高分: ' );[Y2, U2: =maX( s, [: ,1) di sp( '总分最低分:');[Y3, U3]=min(s,[], 1)[zcj , X sxh:end') % desc T3: =sord ( s ,1 ,' descen d降序p=p olyfit ( x, y, 5) x1=1:0、01:101;y1=log10(x1);y 2 =poly V al (p, x1);plot( X 1, y1, ' r -' ,x1 y2 ,'£';)T 5:P1=[1,2,4,0 ,5];P2=[0 ,0, 0, 1,2];P3 =[0,0 , 1,2 , 3:;P4= c onv( P2 , P 3);sp 1 = length( P 1);sp2=len gth( P4);P =[ z er os (1 ,sp2 —s p1 ), P1: + P4x= roots(P)A=[-1, 1、2, -1、4;0、75,2,3、5; 0,5 ,2、5];Ax=p o l y val (PA)A A=po l y valm(P, A)实验九:T1 :f= i nline( ed * X 人2;0 26*x :i=1 ;x=1;whi 1 e x<=3、(:x xA 2 xA 3)1 2* x 3') ;h= 6:2:18;t1=[1 8、0,2 0、28、0, 24、0];t 2 = [1 5、0,1 9、32、0, 30、t=6、5:2:1T1=interp1(h,t T2=inde rpT4: 0,22、0,25、0, 24、0,28、0];7、5;1 ,t, 'sp1 ine ') 1(h, t2,d , 'ps1 0 ,30、0,0,34、0,ine )'x=1 :10:101;y=log101g( i) =f(X);i =i+1;x=X +0、0 1 ;endd x=di f f (g)/ 0、01;dX (1)dx(1 01 )dx(length(g)—1)T2:f1 =in line (‘s qrt (co s(t、人2)+4*sin(2* t )、人2+1)')f2=in lin e('log(1+x)、/( 1+X、A2) ')pi )pi)I 1 = quI2=q u adT3 :ad(f1,0,(f 2, 0,2*2*A=[6, 5, —2;3,—9,0,2: ;B=[—4, 13,1,1 1] ;'x1=A\ B-2, 5; 9,-1 ,4 , —1;3,4,2 ,:L ,U]=I u( A);( L\B)[Q,R ]=q r (A);(Q\B)f u n:f u n ction F = fu n( X) x=X(1);y =X( 2);z =X (3);F (1)=sin(X)+ y^2+l o g (z)—7 ;F(2)=3*x+ 2 Ay— z 人3+1 ;F(3) =x+y+z-5;T5:f =inl ine( '3*x+sin(x) —exp(x) ') ;fzero( f,1 、5)X=fso Ive ('让n', : 1 1 1]',o pt i m set CDi sp l ay/, ' f f 0 ))实验十:T1:x= sym('6 ';y =sym(' 5';z=(x+ 1) /(sqrt( 3 +x) —sq r t (y ))T2:Sy m s x y;t =sym ('51350 ;factor(xA4 — yM) factor(t)T 3:s y ms betal b eta2 x;Sim pli f y( sin( b e t a 1) * cos(beta2) —cos (beta1)*sins i m p li fy(1))T4:d p 1= [ 0,1,0; 1 ,p2=[1,0,0 ;0,1,A = : a,b,c;d,e,f;B= p 1*p 2 * AB1= inv (B)B1* B;tr i l( B ) d et (B)T5:sy ms x t a yf1=(X *( eX p(sin(x) )+1 )—2*(e xp(tan(x))—1) )/sin ( x)A3 ;l imit(f1, x, 0) %( 1)f 2=( sqrt(pi )-sqrt( acos(X )) )/sqrt(x+1);limi t(f 2, X ,— 1 , ' grih t/ % (2)f3=(1— co s(2*x))/x;di ff(f3, x, 1) %(3)di ff (f 3, x,2)A=[a Ax,tA3 ; t*cos(X),log(x): ;dif f(A, x, 1)&( 4)d iff(A ,t,2 )diff(diff (A,x,1),f5=( xA2—2*x) * e yx= -d iff(f5,x, 1) (5)fxy=diff( di ffX= sym ('0');y=sym ( ' 1' ;e val (f xy)T 6: x=sym( ' x;')f1=1/(1+x 人4 +x人8 );int(f1, x)f 2 = 1/(asin (x))人2 /sq r t (1 — x^2);i n t ( f 2,x)f3 =(X A2+1) /(xA4+1);i nt( f 3,X ,0,inf)f4=exp(x)*( 1+eX p( x) )A2;in t(f4 ,X,0,l og(2))实验十一:sym s n X ;S1 = s ymsu m (1/(2* n —1) , n, 1, 1 0) S 2 = symsum( n人2*乂人(门一1),n ,1,inf)S3=s ym s u m (n人2/5人n,n ,1, inf)T 2: x=s ym('X/);f= I og (x);bet a2))4*x 人2+8* x+3 )/ (2 * x +syms a b c e f g h k;0,0 ;0 ,0 ,1];0 ;1,0, 1:;t, 1)X p( -xA2 — y 人2 -X*y);f5,x,1),y, 1)T1:ta ylor (f ,x,6, 1 )T3:x1=s ol ve( '(lo1g+x)—5/(1+sin(X)) =2') x2 =sol ve( '2xA+9* s qrt (x+1)—1=0') x3=sol ve(/3* x* eX p( x)+5* sin( x)—7 8、5 =0 ‘)[x4,y4]=s o lve( S qrt(x^2+y 人2)- 10 0= 0 ' ' *x+5 * y-8= O’)T4 :d so 1 ve(' D2 + 4 *Dy + 2 9 * y = 0' ' 0 )= 0 '/ Dy(0)=15/,'x') T5 :[x,y ,z]=dsol V e ('Dx=2*x —3*y+3*z/ / Dy=4* x-5 * y+3* z ',' D z=4 *x —4*y+ 2*z',/ t ')。
MATLAB程序设计与应用(刘卫国编)课后实验答案之欧阳家百创编
实验一MATLAB运算基础欧阳家百(2021.03.07)1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。
(1)0 122sin851ze =+(2)21ln( 2z x=,其中2120.455i x+⎡⎤=⎢⎥-⎣⎦(3)0.30.330.3sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22a ae e az a a--+=++=--(4)2242011122123t tz t tt t t⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t=0:0.5:2.5解: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;z3=(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) 运算结果: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;z3=(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) z1 =0.2375z2 =0.7114 - 0.0253i 0.8968 + 0.3658i0.2139 + 0.9343i 1.1541 - 0.0044iz3 =Columns 1 through 40.7388 + 3.1416i 0.7696 + 3.1416i 0.7871 + 3.1416i 0.7913 + 3.1416i Columns 5 through 80.7822 + 3.1416i 0.7602 + 3.1416i 0.7254 + 3.1416i 0.6784 + 3.1416i Columns 9 through 120.6196 + 3.1416i 0.5496 + 3.1416i 0.4688 + 3.1416i 0.3780 + 3.1416i Columns 13 through 160.2775 + 3.1416i 0.1680 + 3.1416i 0.0497 + 3.1416i -0.0771 + 3.1416i Columns 17 through 20-0.2124 + 3.1416i -0.3566 + 3.1416i -0.5104 + 3.1416i -0.6752 + 3.1416i Columns 21 through 24-0.8536 + 3.1416i -1.0497 + 3.1416i -1.2701 + 3.1416i -1.5271 + 3.1416i Columns 25 through 28-1.8436 + 3.1416i -2.2727 + 3.1416i -2.9837 + 3.1416i -37.0245Columns 29 through 32-3.0017 -2.3085 -1.8971 -1.5978Columns 33 through 36-1.3575 -1.1531 -0.9723 -0.8083Columns 37 through 40-0.6567 -0.5151 -0.3819 -0.2561Columns 41 through 44-0.1374 -0.0255 0.0792 0.1766Columns 45 through 480.2663 0.3478 0.4206 0.4841Columns 49 through 520.5379 0.5815 0.6145 0.6366Columns 53 through 560.6474 0.6470 0.6351 0.6119Columns 57 through 600.5777 0.5327 0.4774 0.4126Column 610.3388z4 =0 0.2500 0 1.2500 1.0000 2.25002. 已知:求下列表达式的值:(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]解:M 文件: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(3)A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2]运算结果: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(3)A*BA.*BA^3A.^3A/BB\A[A,B][A([1,3],:);B^2]ans =18 52 -1046 7 10521 53 49ans =12 31 -332 8 840 67 1ans =68 44 62309 -72 596154 -5 241ans =12 102 468 0 2619 -130 49ans =37226 233824 48604247370 149188 60076678688 454142 118820ans =1728 39304 -6439304 343 65850327 274625 343ans =16.4000 -13.6000 7.600035.8000 -76.2000 50.200067.0000 -134.0000 68.0000ans =109.4000 -131.2000 322.8000-53.0000 85.0000 -171.0000-61.6000 89.8000 -186.2000ans =12 34 -4 1 3 -134 7 87 2 0 33 65 7 3 -2 7ans =12 34 -43 65 74 5 111 0 1920 -5 403. 设有矩阵A和B(1) 求它们的乘积C。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三二. 1.clear allm=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0]; for x=mif x<0&x~=-3y1=x^2+x-6;disp(['y= ',num2str(y1)])elseif x>=0&x<5&x~=2&x~=3y2=x^2-5*x+6;disp(['y= ',num2str(y2)])elsey3=x^2-x-1;disp(['y= ',num2str(y3)])endend2.clear allx=input('请输入成绩:');while (x>100|x<0)x=input('输入错误,输入错误请重新输入成绩');endswitch fix(x/10)case {9,10}disp('A')case {8}disp('B')case {7}disp('C')case {6}disp('D')case {0,1,2,3,4,5}disp('E')end3. clear allx=input('请输入工号:');y=input('请输入工作时长:');if y>120a=84*120+(y-120)*84*0.15;disp(['您本月基本工资是:',num2str(a)])elseif y<60b=84*y-700;disp(['您本月基本工资是:',num2str(b)]) elsec=84*y;disp(['您本月基本工资是:',num2str(c)])end4. clear alla=fix(rand(1)*89)+10;disp(['a=',num2str(a)])b=fix(rand(1)*89)+10;disp(['b=',num2str(b)])x=input('输入一个四则运算符号:','s'); if abs(x)==43c=a+b;elseif abs(x)==45c=a-b;elseif abs(x)==42c=a*b;elseif abs(x)==47c=a/b;enddisp(['计算结果是:',num2str(c)])5. clear alla=fix(rand(5,6)*89)+10;n=input('输入一个数(输出是一个5*6的矩阵该行元素):');if n>5|n<0b=a(5:5,:);disp(['输入错误,程序输出最后一行的元素:',num2str(b)])elsec=a(n:n,:);disp(['输出结果是:',num2str(c)]) end实验四二.1. clear alls1=0;for n=1:100x=1/(n^2);s1=s1+x;enddisp(['当N=100时:',num2str(s1)]) s2=0;for n=1:1000x=1/(n^2);s2=s2+x;enddisp(['当N=1000时: ',num2str(s2)])s3=0;for n=1:10000x=1/(n^2);s3=s3+x;enddisp(['当N=10000时:',num2str(s3)]) 2. clear alln=1;y=0;while (y<3)x=1/(2*n-1);n=1+n;y=y+x;enddisp(['y<3时n的最大值是:',num2str(n-2)])disp(['相应的y值是: ',num2str(y-x)]) 3. clear allx=input('请输入x的初始值:');a=input('请输入常数a的值:');b=input('请输入常数b的值:');g=a/(b+x);n=0;while ((abs(x-g))>10^-5)g=a/(b+x);x=a/(b+g);n=n+1;if n>499breakendenddisp(['迭代结果是:',num2str(x)])disp(['循环次数:',num2str(n),'´Î'])r1=(-b+sqrt(b^2+4*a))/2;r2=(-b-sqrt(b^2+4*a))/2;disp(['如果迭代收敛,准确值:',num2str(r2)])4. clear allfor n=1:4if n==1f1=1;elseif n==2 f2=0;elseif n==3f3=1;elsea=f3-2*f2+f1;b=a-2*f3+f2;c=b-2*a+f3;d=c-2*b+a;H=[1,0,1,a,b,c,d];for m=8:4:99a=d-2*c+b;b=a-2*d+c;c=b-2*a+d;d=c-2*b+a;H=[H,a,b,c,d];endf100=d-2*c+b;endendmax=max(H);min=min(H);sum=sum(H);disp(['最大值是:',num2str(max)]) disp(['最小值是:',num2str(min)]) disp(['各数和是:',num2str(sum)]) k=0;l=0;p=0;for e=Hif e>0k=k+1;elseif e<0l=l+1;elsep=p+1;endenddisp(['正数的个数是:',num2str(k)]) disp(['负数的个数是:',num2str(l)]) disp(['零的个数是: ',num2str(p)]) 5. clear allp=0;l=0;H=[];for m=2:49a=m;b=m+1;c=a*b-1;for k=1:cif rem(c,k)==0l=l+1;endendif l==2disp(['亲密数对是','(',num2str(a),' ,',num2str(b),')' ])p=p+1;H=[H,c];endl=0;endsum=sum(H);disp(['亲密数对的个数是:',num2str(p)]) disp(['亲密数对的和是: ',num2str(sum)]) 实验五 1.clear alla=input('请输入一个复数:');[e,l,s,c]=fushu(a);函数文件名:fushu.mfunction [e,l,s,c]=fushu(x)e=exp(x);l=log(x);s=sin(x);c=cos(x);disp(['复数e的指数是:',num2str(e)]) disp(['复数e的对数是:',num2str(l)]) disp(['复数e的正弦是:',num2str(s)]) disp(['复数e的余弦是:',num2str(c)]) 2. clear allm1=input('请输入m1的值:');m2=input('请输入m2的值:');m3=input('请输入θ的值:');J=jiefangcheng(m1,m2,m3);函数文件名:jiefangcheng.mfunction J=jiefangcheng(m1,m2,m3) H=[m1*cos(m3*pi/180) -m1-sin(m3*pi/180) 0m1*sin(m3*pi/180) 0 cos(m3*pi/180) 00 m2 -sin(m3*pi/180) 00 0 -cos(m3*pi/180) 1];K=[0;m1*9.8;0;m2*9.8];J=inv(H)*K;disp(['方程组的解是:',num2str(J')]) 3. clear allfor n=10:99a=sushu(n);end函数文件名:sushu.mfunction a=sushu(b)x=fix(b/10);y=rem(b,10);c=0;d=0;for m=1:bif rem(b,m)==0c=c+1;endendfor n=1:10*y+xif rem((10*y+x),n)==0d=d+1;endendif c==2&d==2a=b;disp(['绝对素数是:',num2str(a)])elsea=0; %这里可以赋值,目的是请程序执行end4. clear ally=input('请输入一个数或矩阵:');disp('输入的数或矩阵x是:')disp(y)L=fx(y);函数文件名:fx.mfunction L=fx(y)[m,n]=size(y); K=[];for a=1:nfor b=1:mx=sub2ind(size(y),b,a);h=1/((x-2)^2+0.1)+1/((x-3)^4+0.01); K=[K,h];endendL=reshape(K,n,m);disp('则f(x)=')disp(L')5. clear allfor n=20:10:40if n==20;[f1,f2]=f(n);a=f1;b=f2;elseif n==30;[f1,f2]=f(n);c=f1;d=f2;else[f1,f2]=f(n);e=f1;f=f2;endendy1=e/(a+c);y2=f/(b+d);disp(['(1) y=',num2str(y1)])disp(['(2) y=',num2str(y2)])函数文件名:f.mfunction [f1,f2]=f(n)f1=n+10*log(n^2+5);x=0;for a=1:nb=a*(a+1);x=x+b;endf2=x;实验八章1.clear all;n=0;A=rand(1,30000); meanA=mean(A);stdA=std(A,1,2);maxA=max(A);minA=min(A);for x=Aif x>0.5n=n+1;else continue;endendp=n/30000;disp(['均值=' ,num2str(meanA)]); disp(['标准差=',num2str(stdA)]); disp(['最大值max=',num2str(maxA)]); disp(['最小值min=',num2str(minA)]); disp([ '百分比P=',num2str(p)]);。