当前位置:文档之家› matlab上机习题详细讲解_试题答案

matlab上机习题详细讲解_试题答案

P第一次实验答案要求以0.01秒为间隔,求出y的151个点, 并求出其导数的值和曲线。

clcclearx=0:0.01:1.5;y=sqrt(3)/2*exp(-4*x).*si n(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自定数据)— a cos b n vclccleara=10;b=pi/2;n=5;theta=0:pi/100:2*pi; rho=a*cos(b+n*theta);polar(theta,rho) z2=X.*2-Y.*3;xlabel( 'x')ylabel( 'y')zlabel( 'z') surf(X,Y,z1)hold on surf(X ,Y, z2)k=fi nd(abs(z1-z2)<0.5);x1=X(k)y1=Y(k) z3=x1.A2-2*y1.A2 hold onplot3(x1,y1,z3, '*')4、设y cos x 0.53sin x(1 x2)把x=0~2 n间分为101点,画出以x为横坐标,y 为纵坐标的曲线,要求有图形标注clcclearx=-2*pi:0.1: 2*pi;y=cos(x).*(0.5+si n(x)*3./(1+x.A2));plot(x,y, 'b*-');title('绘图’);xlabel( 'x 坐标');ylabel( 'y 坐标');legend('原函数')gtext( 'y=cos(x)(0.5+3*sin(x)/(1+xA2))' )3.列出求下列空间曲面交线的程序乙=x2 _2y2z2 = 2x _ 3yclcclearx=[-5:0.5:5];[X,Y]=meshgrid(x);z1=X.A2-2*Y.A2; 5、求下列联立方程的解3x 4y - 7z - 12w 二45x - 7y 4z 2w - -3x 8z - 5w = 9-6x 5y - 2z 10w = -8clccleara=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10]; b=[4,-3,9,-8];第二次试验答案1、编制m文件,等待键盘输入,输入密码20120520 ,密码正确,显示输入密码正确,程序结束;否则提示,重新输入。

6.假设一曲线数据点为x = 0:2:4*pi;y = sin(x).*exp(-x/5);试将x的间距调成0.1 ,采用不同插值方法进行插值,并通过子图的形式将不同插值结果和原始数据点绘制在同一图形窗口。

clcclearx=0:2:4*pi;y=s in( 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=i nterp1(x,y,x1);subplot(3,2,1);plot(x,y, 'o-');title( '?-o -凋y'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');cleara=input('输入密码:') while a~=20120520disp('密码错误,请重新输入:')cleara=input('输入密码:')endif a==20120520disp('密码输入正确!')end2、编写一个函数实现以下功能:a. 若没有实参输入变量,则用蓝色实线画出半径为1的圆;b. 若有两个实参输入变量N,R,则用蓝色实线画出外接半径为R的正N多边形;d.若有两个实参输出变量,则分别输出正多边形的面积S和周长L。

g.如果输入变量多于三个或输出变量多于两个则给出错误提示信息。

(提示:外接半径为R的正N多边形参数式:t=0:2*pi/N:2*pi;x=R*sin(t);y=R*cos(t)当N>100时,可看作是半径为R的圆)c=b/a;x=c(1,1)y=c(1,2)z=c(1,3)w=c(1,4)fun ctio n [ S,L]=shiya n22(N,R,str)switch nargincase 0N=100;R=1;str='-b:case 1R=1;str='-b';case 2str='-b';case 35otherwiseerror('输入量太多。

');en d;t=0:2*pi/N:2*pi;x=R*si n(t);y=R*cos(t);if n argout==0plot(x,y,str);elseif n argout>2error('输入量太多。

');elseS=N*R*R*si n( 2*pi/N)/2;L=2*N*R*si n( pi/N);plot(x,y,str)endaxis equal squarebox on3、编写一个学生成绩管理的程序,完成下列功能:(1)构造一个学生结构,包括学生的姓名,课程名称(限M门),考试成绩和平均值等域;(2)从键盘上,连续输入N个学生的情况,分别将这些学生的情况填入到相应的域,若域中没有值即为空或0 ,并分别计算其平均参考材料值写入到其平均值域。

(3)根据平均值排序(由高到低),并输出学生的姓名和平均值。

clcclearn=in put('please in put stude nts n umber:');for x=1: nnumber(x)=struct(' name',",'Curriculum1',",'Curriculum2',",' Curriculum3',",'Average',");endfor i=1: nn umber(i). name=in put(' name:','s');n umber(i).Curriculum1= in put('please in put thescores\nCurriculum1:');n umber(i).Curriculum2=in put('Curriculum2:');n umber(i).Curriculum3=in put('Curriculum3:');n umber(i).Average=(n umber(i).Curriculum1+ number(i).Cu rriculum2+number(i).Curriculum3)/3;disp('the average is:')disp( num2str( number(i).Average))endNameCell=cell(1, n);Array=[1, n];for i=1: nNameCell(1,i)={ number(i). name};Array(i)=n umber(i).Average;endfor j=1:( n-1)iptr = j;for i=(j+1): nif Array(i)>Array(iptr) %比较相邻前后大小?iptr=i;endendif j~=iptr %若后面比前面大,互换Name=NameCell(1,i);NameCell(1,i)=NameCell(1,j);NameCell(1,j)=Name;average=Array(i);Array(i)=Array(j);Array(j)=average;j=1;iptr=j;endenddisp('成绩排序如下:’)for i=1: ndisp(strcat('名次:',num2str(i),' 名字:NameCell(1,i),' 平均成绩:',num2str(Array(i))))end4、使用句柄图像对象绘制曲线:y=2e -0.5x cos( n x),同时对曲线进行标注和修饰。

1、做一个带按钮的界面,当按动播放”按钮时调入声音文件并播放,显示声音波形,并建立一个用于关闭界面的按钮对象。

(提示,找一个.wav文件,简单起见可以在windows目录下找一个文件,将其放在当前工作目录下或搜索路径上。

具体用法请参昭:八、、・[y,f,b]=wavread(*.wav'); %读入声音文件sound(y,f,b) % 由声卡播放声音plot(y) %画出波形x=-12:0.02:12y=2*exp((-0.5)*x).*cos(pi*x)h_f=figure('Positio n',[200 300 300 300],'me nubar',' none') h_a1= axes('positio n',[0.1,0.1,.8,.8])h_t=titl e(h_a1,'函数=2*exp((-0.5)*x).*cos(pi*x)')h_1=li ne(x,y)set(gca,'xtick',[(-6)*pi (-4)*pi (-2)*pi 0 (2)*pi (4)*pi (6)*pi]) set(gca,'xticklabel',{'(-6)*pi',' (-4)*pi', '(-2)*pi', '0', ' (2)*pi', '(4)*pi','(6)pi'})set(gca,'xgrid',' on ','ygrid',' on')set(h_1,'li newidth',2)set(get(h_t,'pare nt'),'color','y')h_an m1=a nno tati on( gcf,'recta ngle',[0.1 0.5 .80.4],'FaceAlpha',.7,'FaceColor','red')2、创建一个用于绘图参数选择的菜单对象,其中包含三个选项Lin eStyle、Marker和Color,每个选项下面又包含若干的子项分别可以进行选择图线的类型、标记点的类型和颜色(每个子项不少于3个),当按下绘图” 按钮时,根据选项绘制正弦曲线(缺省时为蓝色无标记实线)。

相关主题