ImageVerifierCode 换一换
格式:DOCX , 页数:47 ,大小:27.34KB ,
资源ID:12597637      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12597637.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(河北大学MATLAB习题答案分解.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

河北大学MATLAB习题答案分解.docx

1、河北大学MATLAB习题答案分解MATLAB习题参考答案1、利用基本矩阵产生3*3和15*8的单位矩阵、全1矩阵、全0矩阵、均匀分布随机阵(-1,1之间)、正态分布随机阵(均值为1,方差为4)。 解:A1=eye(3); A2=ones(3); A3=zeros(3); A4=2*rand(3)-1; A5=2*randn(3)+1; B1=eye(15,8); B2=ones(15,8); B3=zeros(15,8); B4=2*rand(15,8)-1; B5=2*randn(15,8)+1; 结果:由于数据是随机产生的,所以在没有给出运行结果。2、利用diag等函数产生下列矩阵:a=0

2、 0 8;0 -7 5;2 3 0 b=2 0 4;0 5 0;7 0 8然后利用reshape函数将它们变换成行向量。解:产生a的程序:b=diag(8 -7 2);c=b+diag(5 3,-1);a=fliplr(c)产生b的程序:s=2 2 8;t=4 3 7;v=diag(s);p=diag(t)+fliplr(v);b=fliplr(p)运行结果:a = 0 0 8 0 -7 5 2 3 0b = 2 0 4 0 5 0 7 0 8利用reshape函数将它们变换成行向量:reshape(a,1,9)ans = 0 0 2 0 -7 3 8 5 03、产生一均匀分布在(-5,5)之

3、间的随机阵(50*2),要求精确到小数点后一位。解: A=5-round(100*rand(50,2)/10部分数据结果:A = 2.4000 4.2000 -0.1000 2.7000 -4.6000 -3.3000 -0.5000 -0.40003.5000 4.20004、编程实现当t-,间隔为1时求解正弦和余弦值。解:t=(-1*pi:1/180:pi);y1=sin(t)y2=cos(t)部分数据结果: Columns 10 through 18(y1)-0.0500 -0.0555 -0.0611 -0.0666 -0.0722 -0.0777 -0.0832 -0.0888 -0

4、.09435、利用rand函数产生(0,1)间的均匀分布的10*10随机矩阵A,然后统计A中大于等于0.6的元素的个数。解:A=rand(10);B=A = 0.6;C=sum(B);count=sum(C)运行结果(每次运行结果是不同的,仅作参考):count=326、利用randn函数产生均值为0,方差为1的10*10随机矩阵A,然后统计A中大于-0.5且小于0.5的元素的个数。解:A=randn(10);B=(A-0.5);C=sum(sum(B)运行结果(每次运行结果是不同的,仅作参考):C=481、 解:if and(a1,b=0.5)语句1;elseif and(a0.5)语句2;

5、elseif and(a=1,b=0.5)语句3;else语句4;2、 有一矩阵A,找出矩阵中值等于1的元素,并将它们重新排列成列向量B。解:A=2*rand(4);k=find(A100);A(i,:)= %删去存在奇异值的行运行结果(每次运行结果是不同的,仅作参考):A = 49.5355 -23.7550 -73.0269 -118.4354 39.3214 -88.4472 91.1482 -28.5962 -209.9855 21.2336 -74.0239 -9.5871 -15.8184 72.1322 22.0444 71.4429 11.0770 34.89484、 在给定的

6、100*100矩阵中,删去整行为0的行,删去整列为0的列。解:A=diag(1 2 3 4,1)B=any(A)i,j=find(B=0)A(:,i)= %删除全为0的列B=any(A)i,j=find(B=0)A(j,:)= %删除全为0的行运行结果:初始值:A = 0 1 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 4 0 0 0 0 0操作后:A = 1 0 0 0 0 2 0 0 0 0 3 0 0 0 0 41、将窗口分割成四格,分别绘制正弦、余弦、正切和余切函数曲线,并加上适当的标注。程序为:x=0:pi/50:2*pi;k=1 26 51 76 101;x

7、(k)=;%删除正切和余切的奇异点figure(1)subplot(2,2,1)plot(x,sin(x),k-),grid onlegend(ity=sin(x)title(y=sin(x)xlabel(x), ylabel(y) subplot(2,2,2)plot(x,cos(x),r-),grid onlegend(ity=cos(x)title(y=con(x)xlabel(x), ylabel(y) subplot(2,2,3)plot(x,tan(x),k),grid onlegend(ity=tan(x)title(y=tan(x)xlabel(x), ylabel(y) su

8、bplot(2,2,4)plot(x,cot(x),b-),grid onlegend(ity=cot(x)title(y=cot(x)xlabel(x), ylabel(y)运行如下: 2、绘制多峰函数peaks和三角函数多条曲线。 多峰函数peaks:x,y=meshgrid(-3:0.15:3);z=peaks(x,y);x1=x(1,:);figure(1)plot(x1,z),grid ontitle(二维多峰函数)图形为: x,y=meshgrid(-3:0.15:3);z=peaks(x,y);figure(1)plot3(x,y,z),grid ontitle(三维多峰函数)

9、三角函数多条曲线: 程序为:t=-pi:pi/20:pi;y1=sinh(t); %双曲正弦y2=cosh(t); %双曲余弦figure(1)subplot(2,1,1)plot(t,y1,r-,t,y2,k-),grid onlegend(ity1=sinh(t),ity2=cosh(t)title(三角函数1)xlabel(t), ylabel(y) subplot(2,1,2)plot(t,sin(t),k-),grid onhold on %保持原有图像函数plot(t,cos(t),r-)legend(ity2=cos(t),ity1=sin(t)title(三角函数2)xlabe

10、l(t), ylabel(y) 运行图形为: 3、将图形窗口分成两个,分别绘制以下函数在-3,3区间上的曲线,并利用axis调整轴刻度,使他们具有相同缩放尺度。y1=2x+5; y2=x2-3x+1。程序为:x=-3:0.1:3;y1=2*x+5; y2=x.2-3*x+1;figure(1)subplot(2,2,1)plot(x,y1,r-),grid onlegend(ity1=2*x+5)title(y1=2x+5)xlabel(x), ylabel(y1)subplot(2,2,2)plot(x,y2,k-),grid onlegend(ity2=x.2-3*x+1)title(y2

11、=x2-3x+1)xlabel(x), ylabel(y2) subplot(2,2,3)plot(x,y1,r-),grid onlegend(ity1=2*x+5)title(调整后的y1=2x+5)axis(-3 3 -10 10)xlabel(x), ylabel(y1) subplot(2,2,4)plot(x,y2,k-),grid onlegend(ity2=x.2-3*x+1)title(调整后的y2=x2-3x+1)axis(-3 3 -10 10) %调整坐标轴xlabel(x), ylabel(y2) 运行后的图形: 4、绘制饼图。程序为:x=190 33 45 42 4

12、5;explode=0 1 0 0 0;figure(1)subplot(2,1,1)colormap hsvpie(x,explode)gtext(生活费)gtext(资料费)gtext(电话费)gtext(衣服)gtext(其它)title(二维饼图) subplot(2,1,2)colormap hsvpie3(x,explode)title(三维饼图)图形为: 5、画出函数z=(x-2)2+(y-1.2)2+sin(xy)的三维曲线和网格曲线。程序为:x,y=meshgrid(0:0.5:10); %为三维绘图产生x,y数据矩阵z=(x-2).2+(y-1.2).2;figure(1)

13、subplot(2,1,1) mesh(x,y,z),grid on %绘制网格曲线title(网格曲线)subplot(2,1,2)plot3(x,y,z),grid ontitle(三维曲线)运行后的图形: 6、画出下列函数的曲面及等高线图z=x2+y2+sin(xy)。程序为:x,y=meshgrid(0:pi/10:2*pi);z=x.2+y.2+sin(x*y);figure(1)subplot(2,1,1)surfc(x,y,z), grid ontitle(曲面和等高线) subplot(2,1,2)c,h=contour(x,y,z);set(h,showtext,on,tex

14、tstep,get(h,levelstep)*2);title(等高线)运行后的图形: 1、将图形窗口分成两个,分别绘制正割和余割曲线,并加上标注。程序为:x1=0:pi10:2*pi;figure(1)subplot(2,1,1)plot(x,sec(x),k-),grid onlegend(ity=sec(x)title(y=sec(x)xlabel(x), ylabel(y) subplot(2,1,2)plot(x,csc(x),k-),grid onlegend(ity=csc(x)title(y=csc(x)xlabel(x), ylabel(y)运行后图形为: 2、画出对数和指数

15、曲线并加上标注。x=0.01:0.1:10;y1=log10(x);y2=exp(x);figure(1)subplot(2,1,1)plot(x,y1,k-),grid onlegend(ity1=log-10(x)title(y1=log-10(x)xlabel(x), ylabel(y1) subplot(2,1,2)plot(x,y2,k-),grid onlegend(ity2=exp(x)title(y2=exp(x)xlabel(x), ylabel(y2) 运行后图形为: 3、设有函数y=exp(x+5)+x.3,在半对数坐标系中绘制曲线。程序为:x=1:0.01:10;y=e

16、xp(x+5)+x.3;figure(1)subplot(2,1,1)plot(x,y,r-),grid onlegend(ity=exp(x+5)+x.3)title(平面坐标)xlabel(x), ylabel(y) subplot(2,1,2)semilogx(x,y,k-),grid on %半对数坐标轴legend(ity=exp(x+5)+x.3)title(半对数坐标)xlabel(x), ylabel(y) 运行后图形为: 4、画出各种大小和形状的球和柱体。绘制柱体的程序为:t=0:pi/10:2*pi;figure(1)subplot(2,1,1)x,y,z=cylinder

17、(2+cos(t);surf(x,y,z),axis squaretitle(复杂柱面体) subplot(2,1,2)cylinder, axis squaretitle(简单柱体)绘制球的程序为:figure(1)subplot(2,1,1)sphereaxis equaltitle(半径为1的球) subplot(2,1,2)x,y,z=sphere;x=2*x;y=2*y;z=2*z;surf(x,y,z),axis squaretitle(半径为2的球)运行后的图形: 5、绘制三维条形图:程序为:Y=cool(7);figure(1)subplot(2,2,1),bar3(Y,det

18、ached),title(Detached)subplot(2,2,2),bar3(Y,0.25,detached),title(Width=0.25)subplot(2,2,3),bar3(Y,grouped),title(Grouped)subplot(2,2,4),bar3(Y,stacked),title(Stacked)运行后的图形为: 6、绘制二维条形图程序为:Y=round(rand(5,3)*10);figure(1)subplot(2,2,1),bar(Y,group),title(Group)subplot(2,2,2),bar(Y,stack),title(Stack)s

19、ubplot(2,2,3),barh(Y,stack),title(Stack)subplot(2,2,4),bar(Y,1.5),title(Width=1.5)运行后的图形: 1、编写M函数实现:求一个数是否为素数,在编写一主程序,要求通过键盘输入一个整数,然后完成判断其是否为素数。解:function prime(x)n=fix(sqrt(x);for i=2:n if rem(x,i)=0 a=fasle return else a=true end end运行结果: x=56; prime(x)a =fasle2、编写程序完成从表示字符的响亮中删去空格,并求出字符个数。解:funct

20、ion nstr,n=del(str)nstr=;k=find(str= );nstr=str(k);n=length(nstr);end运行后为: str=dr hy fgh gtesd hgfds; nstr,n=del(str)nstr =drhyfghgtesdhgfdsn = 173、编写M函数统计十进制数值中0的个数,然后编写脚本文件,实现统计所有自然数12006中0的个数。解:M函数为:function y=geshu(x)s=num2str(x);n=length(s);m=0; if s(1)=0 disp(x is error); return end for i=2:n

21、if s(i)=0 m=m+1; end end y=m;脚本文件为 jiu4:sum=0;for x=1:2006 y=geshu(x); sum=sum+y;enddisp(sum)运行结果为: jiu4 5044、利用menu函数输入选择参数ch。当ch=1时,产生-10,10之间均匀分布的随机数;当ch=2时,产生-5,5之间均匀分布的随机数;当ch=3时,产生-1,1之间均匀分布的随机数;当ch=4时,产生均值为0,方差为1的正态分布随机数。要求使用switch函数。解:s=menu(ch,1,2,3,4);n=;switch s case 1,n=20*rand(3)-10 cas

22、e 2,n=10*rand(3)-5 case 3,n=2*rand(3)-1 case 4,n=randn(3) otherwise disp(error)end运行后: 按下2后:n = 4.2274 0.4366 3.3897 3.0037 4.8478 -0.6674 -2.1405 2.1568 -0.29385、求阵列x的平均值和标准差解:function mean1,stdev=stat2(x)m,n=size(x);if m=1m=n;ends1=sum(x);s2=sum(x.2);mean1=s1/m;stdev=sqrt(s2/m-mean1.2);运行后: x=rand

23、(4,4)+2; mean1,stdev=stat2(x)mean1 = 2.5207 2.3922 2.6498 2.2539stdev = 0.1713 0.1892 0.1725 0.20276、测试程序执行时间% tech1.mtici=0;for t=0:.01:100 i=i+1; y(i)=sin(t);endtoc % tech2.mtict=0:.01:100;y=sin(t);Toc运行后:Elapsed time is 0.015217 seconds.Elapsed time is 0.000508 seconds.1、产生menu选择输出颜色解:s=menu(colo

24、r selection,red,green,blue,yellow,black)switch s case 1,scolor=red; case 2,scolor=green; case 3,scolor=blue; case 4,scolor=yellow; case 5,scolor=black; otherwise disp(error)end Scolor运行后: 按下red后:s = 1scolor =red2、企业发放的奖金按个人完成的利润(I)提成。分段提成比例 为 = 即如王某完成25万元利润时,个人可得y=10 x 10% + 10 x 5% + 5 x 2% (万元)据此编

25、写程序,求企业职工的奖金。解:function bonus=bon(I)n=fix(I/100000)if(n4) n=4;endbon1=100000*0.1;bon2=0.05*(200000-100000);bon3=0.02*(400000-200000);switch n case 0,bonus=I*100000; case 1 bonus=bon1+0.05*(I-100000); case 2,3 bonus=bon1+bon2+0.02*(I-200000); case 4,bonus=bon1+bon2+bon3+0.01*(I-400000);end运行后: I=1700

26、000; bonus=bon(I)n = 17bonus = 320003、有一分数序列2/1,3/2,5/3/,8/5求前15项和。解:s=1;t=2;sum=0;x=t/s;sum=sum+x;for i=1:15z=t;t=s+t;s=z;x=t/s;sum=sum+x;endsum运行后: qiuhesum = 26.18814、约瑟夫环解:n=input(please input n:);m=input(please input m:);b=1:n;i=1;c=0;s=0;while s yueseplease input n:12please input m:3a = Columns 1 through 8 3 6 9 12 4 8 1 7 Columns 9 through 16 2 11 5 10 3 16 5 20 Columns 17 through 23 11 9 2 10 19 15 15、编写程序计算x在(-3,3)上,并画出曲线。解:function y=func2(x)n=length(x);for i=1:n; if (x(i)=-3)&(x(i)-1) y

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1