《20154matlab程序设计大作业评分标准.pdf》由会员分享,可在线阅读,更多相关《20154matlab程序设计大作业评分标准.pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、试卷编号命题人:龙佳乐审核人:试卷分类(A 卷或 B 卷)A五邑大学五邑大学试试 卷卷学期:2014至2015学年度第 2学期课程:Matlab 程序设计课程代号:0702210使用班级:140707,140708姓名:学号:题一设 A 是一个 256256 的矩阵,编写一个函数,格式为 B=function_name(A,n),其中 n 为一个正整数(256256),该函数只保留 A 矩阵中绝对值最大的 n 个元素,其他元素值设为零,输出到 B 矩阵。测定 n=500 时程序运行时间。题二将一个绘图界面分 4 幅,选择合适的步长在左上幅与右下幅绘制出下列函数的图形。题三设计类似下图所示的图形
2、用户界面系统,要求有绘图界面有按键可输入参数。用户按不同的按纽输入不同的参数可产生不同的效果。该图为示意图,界面系统的功能可以是画图可以是修改图形参数或者其他。(40 分)(25 分)cosx,x,x2 y28。2 2评分标准:三个题目均正确完成为良好,若第三题设计完整合理、布局美观则为优;只完成前两题,第三题初步完成为中,第三题未完成为及格;只完成前两题任一题,第三题正确完成为中;只完成一题,则不及格。第 1 页 共 7 页function B=function_mane(A,n)t=cputime;a=zeros(1,256*256);for p=1:1:length(a)a(p)=abs
3、(A(p);end s_a=sort(a,descend);n_a=s_a(n);B=max(A,n_a);for i=1:1:256 for j=1:1:256if B(i,j)=n_a B(i,j)=0;endendendtime=cputime-t;fprintf(Run time is%f.n,time);2.函数:function B=E_max(A,n)B=zeros(256,256);R=reshape(A,1,256*256);R=sort(R,descend);for i=1:nx,y=find(A=R(i);B(x,y)=R(i);end主程序:A=rand(256,256
4、);tic;B=E_max(A,300);t=toc t=21.37863.function c=matpro(A,n)第 2 页 共 7 页L=length(A);b=A(1,:);for i=2:Lb=cat(2,b,A(i,:);end;sortb,index=sort(b);for i=1:(L2-n)sortb(i)=0;end;for i=1:L2sortbb(index(i)=sortb(i);endc=sortbb(1:L);for i=1:(L-1)c=cat(1,c,sortbb(i*L+1):(i*L+L);endfuction B=function_name(A,n)C
5、=zeros(245,245);A_abs=abs(A);minA=min(min(A_abs)for(ni=1:n)max_ys yis=max(A_abs);max_x xi=max(max_ys);yi=yis(xi);C(yi,xi)=A(yi,xi);C(yi,xi)=minA;endB=C;function c=function_q(x,n)t=cputime;%获取当前 CPU 时间a=zeros(1,256*256);%生成一个 1 行 256256 列的零矩阵for p=1:1:length(a)%将矩阵 x 的值赋给 a 矩阵a(p)=x(p);%根据你说的意思,个人认为这
6、里应该取绝对值,%即 a(p)=abs(x(p);第 3 页 共 7 页ends_a=sort(a,descend);%对矩阵 a 进行降序排序,最大的在前面n_a=s_a(n);%获取排序后第 n 大的值,即矩阵x 中第 n 大的值%根据你后面的意思,个人认为这里应该取 n+1;%即 n_a=s_a(n+1);c=max(x,n_a);%将矩阵 x 中小于 n_a 的值赋值为 n_a,最后传递给 c 矩阵%遍历 c 矩阵,将所有值为 n_a 的赋值为 0for i=1:1:256for j=1:1:256if c(i,j)=n_a c(i,j)=0;endendendtime=cputime
7、-t;%获取程序运行时间fprintf(Run time is%f.n,time);%输出程序运行时间第二题subplot(2,2,1);ezplot(cos(x)(1/2),-pi./2,pi./2);xlabel(自变量 x)ylabel(因变量 y);subplot(2,2,2);subplot(2,2,3);subplot(2,2,4)ezsurfc(x2+y2);title(.)text(-13,-12,x2+y2=8);text 函数用于在图形中指定的位置上显示字符串。用法 text(x,y,string)在图形中指定的位置(x,y)上显示字符串 stringfuction B=f
8、unction_name(A,n)C=zeros(256,256);A_abs=abs(A);minA=min(min(A_abs)for(ni=1:n)max_ys yis=max(A_abs);第 4 页 共 7 页max_x xi=max(max_ys);yi=yis(xi);C(yi,xi)=A(yi,xi);C(yi,xi)=minA;endB=C;曲线下面显示画出的改曲线的命令,右边是一系列的按钮,按钮可以画出 mane(rand(256,256),100)clf;set(gcf,Unit,normalized,Position,0.2,0.3,0.55,0.30);set(gcf
9、,Menubar,none,Name,图形用户界面系统展示,NumberTitle,off);axes(Position,0.05,0.15,0.55,0.71);uicontrol(gcf,style,text,Unit,normalized,.Posi,0.63,0.85,0.2,0.1,String,.请在下面对话框输入绘图命令,Horizontal,center)hedit=uicontrol(gcf,Style,edit,Unit,normalized,.Posi,0.63,0.15,0.2,0.68,.Max,2);hpopup=uicontrol(gcf,Style,popup,
10、Unit,normalized,.Posi,0.85,0.8,0.15,0.15,String,.Spring|Summer|Autumn|Winter,Call,.comm(hedit,hpopup,hlist);hlist=uicontrol(gcf,String,list,Unit,normalized,.Posi,0.85,0.55,0.15,0.25,String,.Grid on|Grid off|Box on|Box off,Call,.comm(hedit,hpopup,hlist);第 5 页 共 7 页 clf;set(gcf,Unit,normalized,Positio
11、n,0.2,0.3,0.55,0.30);set(gcf,Menubar,none,Name,图形用户界面系统展示,NumberTitle,off);axes(Position,0.05,0.15,0.55,0.71);uicontrol(gcf,style,text,Unit,normalized,.Posi,0.63,0.85,0.2,0.1,String,.请在下面对话框中输入绘图命令,Horizontal,center)hedit=uicontrol(gcf,Style,edit,Unit,normalized,.Posi,0.63,0.15,0.2,0.68,.Max,2);hpop
12、up=uicontrol(gcf,Style,popup,Unit,normalized,.Posi,0.85,0.8,0.15,0.15,String,.Spring|Summer|Autumn|Winter,Call,.comm(hedit,hpopup,hlist);hlist=uicontrol(gcf,String,list,Unit,normalized,.Posi,0.85,0.55,0.15,0.25,String,.Grid on|Grid off|Box on|Box off,Call,.comm(hedit,hpopup,hlist);hpust1=uicontrol(g
13、cf,String,pust,Unit,normalized,.Posi,0.85,0.35,0.15,0.15,String,.绘图,Call,comm(hedit,hpopup,hlist);uicontrol(gcf,String,pust,Unit,normalized,.Posi,0.85,0.15,0.15,0.15,String,.关闭,Call,close all);图形程序x,y,z=sphere(20);subplot(1,2,1);surf(x,y,z);axis equal;light(Post,0,1,1);shading interp;hold on;polt(0,
14、1,1,p);text(0,1,1,light);subrf(x,y,z);axist equal;第 6 页 共 7 页light(Posi,1,0,1);shading interp;hold on;plot3(1,01,1,p);text(1,0,1,light);x0=str2num(get(handles.edit1,string);%xd=str2num(get(handles.edit2,string);%xe=str2num(get(handles.edit3,string)%x=x0:xd:xe;hlines=plot(x,sin(x);%handles.line=hline
15、s;guidata(hObject,handles);%-Executes on button press in pushbutton3.function pushbutton3_Callback(hObject,eventdata,handles)%hObjecthandle to pushbutton3(see GCBO)%eventdatareserved-to be defined in a future version of MATLAB%handlesstructure with handles and user data(see GUIDATA)close(gcf);%关闭窗口第 7 页 共 7 页