matlab求救! 编写一个函数M文件,它的功能:没有输入量时,画出单位圆(见图p6-1);输入量

供稿:hz-xin.com     日期:2025-01-16
自学matlab,求高手帮忙:编写M文件

试试看:
function yout=fun123456(n)
if nargin==0
t=0:pi/50:2*pi;
x=sin(t);
y=cos(t);
plot(x,y);
axis equal;
elseif (n>2)&(n==floor(n))
tt=linspace(0,2*pi,n+1);
xx=sin(tt);
yy=cos(tt);
plot(xx,yy);
axis square;
tit=['正',num2str(n),'边形'];
title(tit);
elseif n~=floor(n)
error('输入错误,请重新输入!');
end

在Matlab下输入:edit,然后将下面两行百分号之间的内容,复制进去,保存
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function zhidao_wxf(varargin)
if nargin==0 %画单位圆
theta=0:0.01:2*pi;
x=cos(theta);
y=sin(theta);
plot(x,y);
axis square
elseif nargin==1 %一个参数
n=varargin{1};
if (n>2)
x=[];
y=[];
for i=0:n
x=[x,cos(i*2*pi/n)];
y=[y,sin(i*2*pi/n)];
end
plot(x,y)
axis square
else
error('请输入大于2的整数')
end
else
error('输入的参数太多')
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


返回Matlab中,测试:分别输入:
>> zhidao_wxf %出来一个单位圆
>> zhidao_wxf(1) %错误,参数1比2小,显示的是"请输入大于2的整数"
>> zhidao_wxf(8) %输出一个八边形
>> zhidao_wxf(2,3) %输出"输入的参数太多"提示
>> zhidao_wxf() 这个是不允许的,Matlab会报错。

输入:polygon('')为没有输入量;polygon(n)为有输入量

代码如下:

function polygon(n)

if(isempty(n))

t = linspace(0,2*pi);

x = sin(t);

y = cos(t);

plot(x,y)

title('单位圆') ; 

return;

end

if ((n<3)||(n~=fix(n)))

disp('n必须不小于3,且不能为非自然数!');

return;

else

t = linspace(0,2*pi,n+1);

x = sin(t);

y = cos(t);

plot(x,y)

title(['正',num2str(n),'边形'])  

end



function exm060201(N)
% exm060201.m The work of timu 2
% N 请输入是几边形
% N 没有输入量时 画圆
if nargin<1
N=100;
end

b=round(N)%取整
%b==a & a>0 %b==a判断是否是整数,a>0判断是否是正数,二者取逻辑与,即可判断正整数

if ~(b==N & N>0)
error('不是正整数')
end

if N<3
N=100;
end

Hr = @paints;
feval(Hr,N)

%-------------------------subfunction-----------------------------------------------
function paints(N)
R=1;
t=0:2*pi/N:2*pi;
x=R*sin(t);y=R*cos(t);
plot(x,y);
L=num2str(N);
title( sprintf('Polygon with %d edges',N) ) %如何在title中使用变量
axis square
shg

MATLAB 7x 程序设计语言第二版:第一章介绍哪些MATLAB系统组成部分?_百度...
MATLAB会查找特定路径寻找文件,工作空间则存储变量和函数,保证了代码的执行效率。1.4 MATLAB集成环境的各个组件 包括命令窗口、命令历史记录、以及编辑M文件的功能,提供了一个完整的开发环境。1.5.1 MATLAB命令窗口 用户在此输入和执行MATLAB命令,实时查看计算结果。1.5.2 命令历史窗口 记录用户先前的...