matlab程序的设计第三章课后习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.P138第6题在同•坐标轴中绘制下列两条曲线并标注两曲线交叉点。
»t=0:0.01:pi;
» xl=t;
» yl=2*xl-0.5;
» x2=sin(3*t).*cos(t);
» y2=sin(3*t).*sin(t);
» plot(xl,yUrJx2$2,gJ)
» axis(卜12 » hold on » s=solve(,y=2*x-0.5,/,x=sin(3*t)*cos(t)7y=sin(3*t)*sin(t)1); » plot(double(s.x)/double(s.y)/,*1); 截图: » t=0:0. 01:pi; » xl=t; » yl=2*xl-0.5; » x2=sinC3#*t).*cos(t): » y2=sin(3*t). *sin(t): » plot (xl? yl2 ' r-? x22y2?) » axis([-l, 2^-1. 5, 1]) >> hold on » s=solve C y=2#x-0.5=J x=sin(3*t)*cos(t)‘,' y=sin(3*t)W£in(t)'): >> plot (double (s. x), double(s.y),' ; P366笫4题绘制极坐标曲线,并分析对曲线形状的影响。function [ output__args ] = Untitled2 ( input_args ) %UNTITLED2 Summary of this function goes here % Dmtailed explanation goes here theta=0:0 ・ 01:2*pi; a=input ( 1请输入a 的ffl:1); b=input ( 1请输入b 的tf[:'); n=input ('请输入n的值:1); rho=a*sin (b-?-n*theta); polar (theta z rho z'k'); end 下而以b=l, n=L的极坐标图形为基础来分析a、b、n的影响。 对&的值进行•改变:对比发现B只影响半径值的整倍变化 对b的值进行改变:对比发现b的值使这个圆转换了•定的角度 对n的值进行改变:对比发现当n>=2时有如下规律 1、当"为整数时,图形变为2D个花瓣状的图形 2、当"为奇数时,图形变为n个花瓣状的图形分别让"为2、 3、 4、5 同时改变匕和n的值,对比发现图形变为2“个花瞩状,并且还旋转了•定角度 1绘制sin(x)曲线,通过句柄修改曲线的颜色,要求: a)生成曲线的同时,获取句柄,再修改颜色; >> >:=0 :pi/50 : 2*pi; >> y=sin(x); >> h=plot(x,y) h = 174.0101 >> set (h z 'color *, * r1); 截图如下: 截图如下: b)先生成曲线,然后再获取句柄,再完成颜色修改。 >> >:=0 :pi/50 : 2*pi; >> y=sin(x); » plot(x,y); >> hl=plot(x,y) hl = 174.0095 >> set (hl, * color 1 , * r'); 截图如下: 2 •制作•个动画片,让•个马桜而旋转起来。 function [ output_args ] = Untitled ( input_args ) %UNTITLED Summary of this function goes here % Detailed explanation goes here m=-10:0.05:10; n=-10:0.05:10; [x z y]=meshgrid(m, n); z=l/2 •★x. A 2-l/4 A 2; mesh (x f y r z) axis off; [X/Y/z]=peaks(30); m=moviein(15); for i=l:15 view (-37 ・5+24ri-l) ,30); m (:z i)=getframe; end movie (m) end 动图效果如下: 3•根据绘制平【tri曲线,并分析参数&对其形状的影响,其中 动画效果版: >> syms a x y » eq=x A2/a A2+y A2/(25-a A2)-1; » aa=[0.5:0.5:4.5z5.5:8]; >> [m z n]=size(aa); » for i=l:n eql=subs(eq, a, aa(i)); ezplotfeql,[-20,20]); drawnow axis([-20,20,-20,20]); pause(0 ・ 5); end 动图如下: 普通版: >> t=0:pi/50:2*pi; » i=l; » for a=0:0・5:4・5 x=a*cos(t); y=sqrt(25-a•八2)*sin(t); subplot(3z 3z i); plot (x z y); axis([-8,8,-8Z 8]); i=i+l; end