1、matlab课后习题解答程序设计与应用课后习题解答班级:姓名:学号:3.写出完成下列操作的命令。(1)、将矩阵A第25行中第1、3、5列元素赋给矩阵B。B=A(2:5,1、3、5)(2)、删除矩阵A的第七号元素。A(7)= (3)、将矩阵A的每个元素值加30。A=A+30(4)、求矩阵A的大小和维数。 Size(A) ndims(A)(5)、将向量t的0元素用机器零代替。 t=eps(6)、将含有12个元素的向量x转换成3*4矩阵。Reshape(x,3,4)(7)、求一个字符串的ASCII码。double( )(8)、求一个ASCII码所对应的字符。 Char()4、下列命令执行后,L1、L
2、2、L3、L4的值分别是多少? A=1:9; B=10-A; L1=A=B; L2=A L3=A3&A L4=find(A3&A L1,L2,L3,L4;L1 = 0 0 0 0 1 0 0 0 0L2 = 1 1 1 1 1 0 0 0 0L3 = 0 0 0 1 1 1 0 0 0 L4L4 = 4 5 65、(1)取出A的前3行构成矩阵B,前两列构成矩阵C,右下角3*2子矩阵构成D,B与C的乘积构成矩阵E。 (2)分别求E=10&A A=23 10 -0.778 0;41 -45 65 5;32 5 0 32;6 -9.54 54 3.14; B=A(1:3,:); C=(:,1:2);
3、 C=A(:,1:2); D=A(2:4,3:4); E=B*C; E E&Dans = 1 1 0 1 1 1 E|Dans = 1 1 1 1 1 1 E|Dans = 0 0 1 0 0 0 find(A=10&A A=34,NaN,Inf,-Inf,-pi,eps,0; all(A)ans = 0 isnan(A)ans = 0 1 0 0 0 0 0 isinf(A)ans = 0 0 1 1 0 0 0 isfinite(A)ans = 1 0 0 0 1 1 17.用结构体矩阵来存储5名学生的基本情况数据,每名学生的数据包括学号、姓名、专业和6门课程的成绩。 A(1).x1=学号
4、;A(1).x2=姓名;A(1).x3=专业;A(1).x4.x41=成绩1;.A(2).x1=学号;A(2).x2=姓名;A(2).x3=专业;A(2).x4.x41=成绩1;.A(3).x1=学号;A(3).x2=姓名;A(3).x3=专业;A(3).x4.x41=成绩1;.A(4).x1=学号;A(4).x2=姓名;A(4).x3=专业;A(4).x4.x41=成绩1;.A(5).x1=学号;A(5).x2=姓名;A(5).x3=专业;A(5).x4.x41=成绩1;.8、建立单元矩阵B并回答有关问题。 B=1;Brenden;reshape(1:9,3,3);12,34,2;54,21
5、,3;4,23,67; size(B)ans = 4 1 B1,1=1;B1,2=Brenden;B=reshape(1:9,3,3);B=12,34,2;54,21,3;4,23,67; size(B)ans = 3 3 B1,1=1;B1,2=Brenden;B2,1=reshape(1:9,3,3);B2,2=12,34,2;54,21,3;4,23,67; size(B)ans = 3 3 B1,1=1; B1,2=Brenden; B2,1=reshape(1:9,3,3); B2,2=12,34,2;54,21,3;4,23,67; size(B)ans = 3 3 ndims(B
6、)ans = 2 B(2)ans = 3x3 double B(4)ans = Brenden B(3)=; B3=; BB = 1 3x3 double 3x3 cell 23 2 3 67第四章第一题x=input(enter x:);m1=fix(x/1000);m2=fix(x-m1*1000)/100);m3=fix(x-m1*1000-m2*100)/10);m4=rem(x,10);m1=rem(m1+7),10);m2=rem(m2+7),10);m3=rem(m3+7),10);m4=rem(m4+7),10);m=m3*1000+m4*100+m1*10+m2disp(m)
7、第二题a=input(请输入a:);b=input(请输入b:);c=input(请输入c:);x=input(请输入x:);switch fix(x/0.5) case1,2 y=a*x2+b*x+c; case3,4,5,6 y=a*sin(b)+x; case7,8,9,10 y=log(abs(b+c/x);enddisp(y)a=input(请输入a:);b=input(请输入b:);c=input(请输入c:);x=input(请输入x:);if x=0.5&x=1.5&x=3.5&x5.5 y=log(abs(b+c/x); end y 第三题a=fix(rand(1,20)*1
8、00);%产生20个随机数,因为产生的随机数是与小数形式产生的,乘于100后就是带有两个小数的两位数,在求整,就达到要求了sum=0;h=1;for i=1:20 sum=sum+a(i);%求20个数的和endb=sum/20;% 求平均值 %一下是求出小于平均值的奇数for i=1:20 if (a(i)Amax Amax=A(i+1); endif A(i+1) d=2 5;8 7; a,b=test(c,d);a = 18 19 46 50b = 2 1024 35第九题函数文件:function sum=test(m,n)sum=0;for i=1:n sum=sum+im;end运行结果:sum=test(1,100)+test(2,50)+test(0.5,10)sum = 4.7997e+004第十题s=0;a=12,13,14;15,16,17;18,19,20;21,22,23;for k=a for j=1:4 if rem(k(j),2)=0 s=s+k(j); end endends运行结果:s = 108命令文件 exe.m:global xx=1:2:5;y=2:2:6;ex=sub(y);xy函数文件 sub.m:function fun=sub(z)global xz=3*x;fun=x+z;运行结果:exex = 1 3 5y = 2 4 6
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1