www.gusucode.com > 高等数学问题求解源码程序 > CH12/max_min.m
function varargout=max_min(fun,xrange,yrange,type) %MAX_MIN 验证有界闭区域上二元函数的介值定理 % MAX_MIN(FUN,XRANGE,YRANGE) 图形化方法演示有界闭区域上二元函数的介值定理 % MAX_MIN(FUN,XRANGE,YRANGE,TYPE) 图形化方法演示有界闭区域上二元函数的介值定理, % 图形可以有两种显示方式:'rect'和'circ' % [ZMAX,ZMIN]=MAX_MIN(...) 返回函数在指定区域上的最大值和最小值 % % 输入参数: % ---FUN:给定的二元函数 % ---XRANGE,YRANGE:自变量范围 % ---TYPE:图形绘制类型,有'rect'和'circ'两个取值 % 输出参数: % ---ZMAX,ZMIN:函数的最大值和最小值 % % See also ezsurf, max, min if nargin==3 type='circ'; end if ~any(strcmp(type,{'rect','circ'})) error('The Input argument type must be either ''rect'' or ''circ''.') end h=ezsurf(fun,[xrange yrange],type); X=get(h,'XData'); Y=get(h,'YData'); Z=get(h,'ZData'); zmax=max(Z(:)); zmin=min(Z(:)); hold on surf(X,Y,zmax*ones(size(X))) surf(X,Y,zmin*ones(size(X))) shading interp if nargout>0 varargout{1}=zmax;varargout{2}=zmin; end web -broswer http://www.ilovematlab.cn/forum-221-1.html