资源描述:
《matlab上机习题详细讲解_试题答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、......P第一次实验答案1.设要求以0.01秒为间隔,求出y的151个点,并求出其导数的值和曲线。clcclearx=0:0.01:1.5;y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3)y1=diff(y)subplot(2,1,1)plot(x,y)subplot(2,1,2)plot(x(1:150),y1)2绘制极坐标系下曲线(a,b,n自定数据)clccleara=10;b=pi/2;n=5;theta=0:pi/100:2*pi;rho=a*cos(b+n*theta);polar(th
2、eta,rho)3.列出求下列空间曲面交线的程序clcclearx=[-5:0.5:5];[X,Y]=meshgrid(x);z1=X.^2-2*Y.^2;z2=X.*2-Y.*3;xlabel('x')ylabel('y')zlabel('z')surf(X,Y,z1)holdonsurf(X,Y,z2)k=find(abs(z1-z2)<0.5);x1=X(k)y1=Y(k)z3=x1.^2-2*y1.^2holdonplot3(x1,y1,z3,'*')4、设把x=0~2π间分为101点,画出以x为横坐标,y为纵坐标的曲线,要求有图形标
3、注。clcclearx=-2*pi:0.1:2*pi;y=cos(x).*(0.5+sin(x)*3./(1+x.^2));plot(x,y,'b*-');title('绘图');xlabel('x坐标');ylabel('y坐标');legend('原函数')gtext('y=cos(x)(0.5+3*sin(x)/(1+x^2))')5、求下列联立方程的解clccleara=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10];b=[4,-3,9,-8];参考材料......c=b/a;x=c(1,1)y=c
4、(1,2)z=c(1,3)w=c(1,4)6.假设一曲线数据点为x=0:2:4*pi;y=sin(x).*exp(-x/5);试将x的间距调成0.1,采用不同插值方法进行插值,并通过子图的形式将不同插值结果和原始数据点绘制在同一图形窗口。clcclearx=0:2:4*pi;y=sin(x).*exp(-x./5);x1=0:0.1:4*pi;y01=interp1(x,y,x1,'spline');y02=interp1(x,y,x1,'cubic');y03=interp1(x,y,x1,'nearest');y04=interp1(x,
5、y,x1);subplot(3,2,1);plot(x,y,'o-');title('Ôº¯Êý');subplot(3,2,2);plot(x1,y01,'gx-');title('spline');subplot(3,2,3);plot(x1,y02,'m+-');title('cubic');subplot(3,2,4);plot(x1,y03,'r*-');title('nearest');subplot(3,2,5);plot(x1,y04,'kd-');title('line');第二次试验答案1、编制m文件,等待键盘输入,输入密
6、码20120520,密码正确,显示输入密码正确,程序结束;否则提示,重新输入。cleara=input('输入密码:')whilea~=20120520disp('密码错误,请重新输入:')cleara=input('输入密码:')endifa==20120520disp('密码输入正确!')end2、编写一个函数实现以下功能:a.若没有实参输入变量,则用蓝色实线画出半径为1的圆;b.若有两个实参输入变量N,R,则用蓝色实线画出外接半径为R的正N多边形;d.若有两个实参输出变量,则分别输出正多边形的面积S和周长L。g.如果输入变量多于三个或输
7、出变量多于两个则给出错误提示信息。(提示:外接半径为R的正N多边形参数式:t=0:2*pi/N:2*pi;x=R*sin(t);y=R*cos(t)当N≥100时,可看作是半径为R的圆)function[S,L]=shiyan22(N,R,str)switchnargin参考材料......case0N=100;R=1;str='-b';case1R=1;str='-b';case2str='-b';case3;otherwiseerror('输入量太多。');end;t=0:2*pi/N:2*pi;x=R*sin(t);y=R*cos(t)
8、;ifnargout==0plot(x,y,str);elseifnargout>2error('输入量太多。');elseS=N*R*R*sin(2*pi/N)/