实验1Matlab基本操作、M文件和流程控制语句-答案1、计算以下表达式的值,将结果按不同格式输出。掌握format命令的使用方法。(1)26)3sin(3.13y(2))1ln(212xxy,其中545.0212ix(3)23.0ln)3.0sin(23.03.0xxeeyxx,其中0.3,9.2,8.2,,8.2,9.2,0.3x以(1)为例,其余类似。(1)y=1.3^3*sin(pi/3)*sqrt(26)y=9.7017formatlongy=1.3^3*sin(pi/3)*sqrt(26)y=9.70168931166114formatshortey=1.3^3*sin(pi/3)*sqrt(26)y=9.7017e+000formatbanky=1.3^3*sin(pi/3)*sqrt(26)y=9.70formatraty=1.3^3*sin(pi/3)*sqrt(26)y=2862/295(2)formatshortx=[21+2*i;-0.455]x=2.00001.0000+2.0000i-0.45005.0000y=(1/2)*log(x+sqrt(1+x^2))y=0.7114-0.0253i0.8968+0.3658i0.2139+0.9343i1.1541-0.0044i(3)formatshortx=-3:0.1:3;y=((exp(0.3*x)-exp(-0.3*x))/2).*sin(x+0.3)+log((0.3+x)/2)2、已知:72330213176538773443412BA,求下列表达式的值:(1)A+6*B和A-B+I(2)A*B和A.*B(3)A^3和A.^3(4)A/B和B\A(5)[A,B]和[A([1,3],:);B^2]A=[1234-4;34787;3657];B=[13-1;203;3-27];A+6*Bans=1852-10467105215349A-B+eye(3)ans=1231-3328840671A*Bans=684462309-72596154-5241A.*Bans=1210246802619-13049A^3ans=372262338244860424737014918860076678688454142118820A.^3ans=172839304-643930434365850327274625343A/Bans=16.4000-13.60007.600035.8000-76.200050.200067.0000-134.000068.0000B\Aans=109.4000-131.2000322.8000-53.000085.0000-171.0000-61.600089.8000-186.2000[A,B]ans=1234-413-13478720336573-27[A([1,3],:);B^2]ans=1234-436574511101920-5403、已知)20()30()40(fffy,(1)当)5ln(10)(2nnnf时,求y的值。(2)当)1(*4*33*22*1)(nnnf时,求y的值。(1)先创建文件函数:f.mfunctionf=f(n)f=n+10*log(n^2+5);然后在主窗口调用:y=f(40)/(f(30)+f(20))y=0.6390(2)先创建文件函数:f.mfunctionf=f(n)f=0;fori=1:nf=f+i*(i+1);end或用while语句创建函数:functionf=f(n)f=0;whilen=1f=f+n*(n+1);n=n-1;end然后在主窗口调用:y=f(40)/(f(30)+f(20))y=1.76624、请分别用if和switch语句实现。输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分~100分为A,80分~89分为B,70分~79分为C,60分~69分为D,60分以下为E。n=input('pleaseenterascores:');ifn=90disp('A')elseifn=80disp('B')elseifn=70disp('C')elseifn=60disp('D')elsedisp('E')end用switch语句:n=input('pleaseenterascores:');m=fix(n/10)switchmcase10disp('A')case9disp('A')case8disp('B')case7disp('C')case6disp('D')otherwisedisp('E')end5、已知3,23,12,01,1321321nffffnfnfnfnnnn求201~ff中:(1)这20个数中的最大值,最小值,这20个数的总和。(2)统计正数、零、负数的个数。(3)显示201~ff的值。f1=1;f2=0;f3=1;max=1;min=0;n=4;positive=2;negative=0;zero=1;sum=2;s=[101];whilen=20f=f3-2*f2+f1;sum=sum+f;iffmaxmax=f;elseiffminmin=f;endiff0positive=positive+1;elseiff0negative=negative+1;elsezero=zero+1;ends=[sf];f1=f2;f2=f3;f3=f;n=n+1;endfprintf('themaxvalue=%f\ntheminvalue=%f\n',max,min);fprintf('thesum=%f\n',sum);fprintf('thenumberofpositive:%f\n',positive);fprintf('thenumberofnegative:%f\n',negative);fprintf('thenumberofzero:%f\n',zero);f=s或:f1=1;f2=0;f3=1;max=1;min=0;n=4;positive=2;negative=0;zero=1;sum=2;g(1)=1;g(2)=0;g(3)=1;whilen=20f=f3-2*f2+f1;g(n)=fsum=sum+f;iffmaxmax=f;elseiffminmin=f;endiff0positive=positive+1;elseiff0negative=negative+1;elsezero=zero+1;endf1=f2;f2=f3;f3=f;n=n+1;endfprintf('themaxvalue=%f\ntheminvalue=%f\n',max,min);fprintf('thesum=%f\n',sum);fprintf('thenumberofpositive:%f\n',positive);fprintf('thenumberofnegative:%f\n',negative);fprintf('thenumberofzero:%f\n',zero);f=g结果:themaxvalue=65.000000theminvalue=-115.000000thesum=-135.000000thenumberofpositive:9.000000thenumberofnegative:9.000000thenumberofzero:2.000000f=Columns1through1010120-3-154-7Columns11through20-10821-5-39-86542-96-1156、编写一个函数文件,输入3个参数,前2个为矩阵,第3个是数字0或1,如果是0,则计算矩阵乘积A*B,否则计算A.*B。functionC=f(A,B)A=input('EntermatrixA:');B=input('EntermatrixB:');k=input('Enter0or1please:');C=zeros(size(A,1),size(A,2));%此行语句可略掉ifk==0ifsize(A,2)==size(B,1)C=A*B;elsedisp('A与B无法相乘')endelseifsize(A)==size(B)fori=1:size(A,1)%返回A的行数forj=1:size(A,2)%返回A的列数C(i,j)=A(i,j)*B(i,j);endendelsedisp('只有同型矩阵才能点乘')endend