收藏 分销(赏)

《MATLAB7.x》程序设计语言(第二版)课后题答案.doc

上传人:pc****0 文档编号:7798747 上传时间:2025-01-17 格式:DOC 页数:5 大小:45KB 下载积分:10 金币
下载 相关 举报
《MATLAB7.x》程序设计语言(第二版)课后题答案.doc_第1页
第1页 / 共5页
《MATLAB7.x》程序设计语言(第二版)课后题答案.doc_第2页
第2页 / 共5页


点击查看更多>>
资源描述
《MATLAB7.x》程序设计语言(第二版)部分课后习题答案(楼顺天,姚若玉,沈俊霞编著) 说明:所有答案均是本人在备考过程中亲自整理的,收录了一部分题目的答案。答案可能存在不足甚至谬误,很多算法也可能不是最优的,仅供参考。本人尽力整理的一点点心血,希望对大家有所帮助。 第二章 8、 a=rand(5,5); [i,j]=find(a>0.5); for u=1:length(i); b(u)=a(i(u),j(u)); end b' 10、aa=any(a'); i=find(aa==0) a(i,:)=[]; 第四章 1、function flag=isprime(m) %m为素数,flag=1 %m不为素数,flag=0 k=sqrt(m); flag=1; for i=2:k; if rem(m,i)==0; flag=0; break end end m=input('input an integer\n'); flag=isprime(m); if flag==1 disp([num2str(m),'是素数']) else disp([num2str(m),'不是素数']) end 4、function [x1,x2]=jfc(a,b,c) d=b^2-4*a*c; if d>0; x1=(-b-sqrt(d))/(2*a); x2=(-b+sqrt(d))/(2*a); elseif d==0; x1=-b/(2*a); x2=x1; end a=input('a='); b=input('b='); c=input('c='); [x1,x2]=jfc(a,b,c); if x1~=x2; disp('原方程存在两个不同的根') disp(['x1=',num2str(x1)]) disp(['x2=',num2str(x2)]); elseif x1==x2; disp('原方程存在两个相同的根') disp(['x1=x2=',num2str(x1)]) else disp('原方程的根不存在') end %MATLAB上机作业,184页习题4,求二次方程的实根 function [s1,s2]=solve(a,b,c) d=b^2-4*a*c; if d>0 s1=(-b-sqrt(d))/(2*a) s1=(-b-sqrt(d))/(2*a) %disp(['原方程有两个不同的根'num2str(s1)'和'nums2tr(s2)]) elseif d==0 s1=(-b-sqrt(d))/(2*a); s1=(-b-sqrt(d))/(2*a); %disp(['原方程有两个相同的根'num2str(s1)) else disp('原方程无实根') end end 5、x=-3:0.01:3; if x>=-3 & x<-1; y=(-x.^2-4*x-3)/2; elseif x>=-1 & x<1; y=-x.^2+1; else y=(-x.^2+4*x-3)/2; end plot(x,y) 6、%MATLAB上机作业,184页习题6,点不同按钮产生不同分布的数 s=menu('请选择随机数类型','U[-10,10]','U[-5,5]','U[-1,1]','N(0,1)'); switch s case 1,n=(rand(1)-0.5)*20; case 2,n=(rand(1)-0.5)*10; case 3,n=(rand(1)-0.5)*2; case 4,n=randn(1); otherwise disp('请选择!') end n 7、load a.txt [m,n]=size(a); w=zeros(m,1); for i=1:m; w(i)=(2*a(i,1)+3*a(i,2)+2*a(i,3)+4*a(i,4)+2.5*a(i,5)+a(i,6))/14.5; end w 8、function k=jj(i) if i<=10 k=0.1*i; elseif i<=20 k=1+(i-10)*0.05; elseif i<=40 k=1.5+(i-20)*0.02; else k=1.9+(i-40)*0.01; end s=0;a=2;b=1; for i=1:15; s=s+a/b; c=b; b=a; a=a+c; end s 9、a=ones(15,1);b=ones(15,1);c=ones(15,1);a(1)=2;c(1)=2; for i=2:15; a(i)=b(i-1)+a(i-1); b(i)=a(i-1); c(i)=a(i)./b(i) end sum(c) 第五章 3、t=1:1:10; t=t'; y=[4.842,4.362,3.754,3.368,3.169,3.083,3.304,3.016,3.012,3.005]'; x1=[ones(size(t)),exp(-t)]; x2=[ones(size(t)),t.*exp(-t)]; p1=x1\y; p2=x2\y; tt=linspace(1,10,1000); plot(t,y,'*',tt,p1(1)+p1(2)*exp(-tt),'r-',tt,p2(1)+p2(2)*tt.*exp(-tt),'c-') grid on,legend('给定数据','y1拟合','y2拟合') 5、(1)function dy=cwf(t,y) dy=[5*y(1)-5*y(2)-6*y(3);3*y(1)-2*y(2)+5*y(3);2*y(1)-y(2)-4*y(3)]; x0=[1,-4,5]; tspan=[13,16]; [t,y]=ode45('cwf',tspan,x0); plot(t,y) (2)function dy=cwf(t,y) dy=[y(1)+2*y(2)-3*y(3)+y(4);3*y(1)+y(3)-2*y(4);y(1)-2*y(2)+5*y(4);2*y(1)+3*y(2)+y(4)]; x0=[1,-1,2,1]; tspan=[15,16]; [t,y]=ode45('cwf',tspan,x0); plot(t,y) 7、t=1:10;tt=1:0.01:10; y=[15,39.5,66,85.5,89,67.5,12,-86.4,-236.9,-448.4]; p1=polyfit(t,y,2); y1=polyval(p1,tt); p2=polyfit(t,y,3); y2=polyval(p2,tt); plot(t,y,'b*',tt,y1,'r-',tt,y2,'c-'); legend('样本点','二次拟合','三次拟合'),grid on 10&11、pa=[2 3 -4]; pb=[4 -2 5]; pc=[3 -2 5 6]; d1=conv(pa,pb) [q2,r2]=deconv(pc,pa) [q3,r3]=deconv(pc,pb) dy1=polyder(pa,pb) [q2,r2]=polyder(pc,pa) [q3,r3]=polyder(pc,pb) 12、x=-5:1:5;xx=-5:0.01:5; y=10.*exp(-abs(x)); y1=interp1(x,y,xx,'nearest'); y2=interp1(x,y,xx,'linear'); y3=interp1(x,y,xx,'spline'); y4=interp1(x,y,xx,'cubic'); plot(x,y,'*',xx,y1,'r-',xx,y2,'c-',xx,y3,'k-',xx,y4,'g-') grid on,legend('样本点','最临近内插','线性内插','三次样条内插','三次曲线内插') 13、a=rand(1,50); amax=max(a) amin=min(a) ua=mean(a) vara=(std(a))^2 b=randn(1,50); bmax=max(a) bmin=min(a) ub=mean(a) varb=(std(a))^2 14、t=[0,0.2,0.4,0.6,0.8,1,2,5]'; tt=0:0.01:5; y=[1,1.51,1.88,2.13,2.29,2.4,2.6,-4]'; p1=polyfit(t,y,3); y1=polyval(p1,tt); x=[ones(size(t)),exp(t)]; p2=x\y; y2=p2(1)+p2(2)*exp(tt); plot(t,y,'k*',tt,y1,'r-',tt,y2,'b-') legend('样本点','三次多项式拟合','指数拟合'),grid on 17、function y=jifen1(x) y=exp(-2*x); function y=jifen2(x) y=exp(2*x); function y=jifen3(x) y=x.^2-3*x+0.5; z1=quadl('jifen1',0,2) z2=quadl('jifen2',0,2) z3=quadl('jifen3',-1,1) 19、function z=jifen(x,y) z=exp(-x*y)-2*x*y; q=dblquad('jifen',0,1,-1,1) 20、function dy=cwf(t,y) dy=[0.5-y(1);y(1)-4*y(2)]; x0=[1,-0.5]; tspan=[0,25]; [t,y]=ode45('cwf',tspan,x0); plot(y(1,:),y(2,:));grid on
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服