matlab的m函数入门1

1. 概述
  • 参看别人的文章和代码,对每一句代码进行分析,从而达到 matlab的 m函数入门,针对 matlab 的 m 函数小白。(注意 m函数名称和m文件一致 参见 matlab知识积累,同时需要知道希尔伯特矩阵)
2. 代码及其解析
function A = myhilb(n,m)
% This is help document.
% 自定义函数 myhilb,有两个参数 n m
% nargin 和 nargout 是两个获取函数参数数目的
%matlab函数,可以直接用 nargout/nargin来表示
%输出和输入的参数数目

% 针对错误调用格式: [A B] = myhilb(n,m)
if nargout > 1   % 如果输出参数的数目 > 1,输出错误信息
	error('Too many output arguments.');
end  % if...end 


if nargin == 1  % 如果输入参数的个数为 1,将 n 的值赋给 m
	m=n;
% 输入参数个数为 0 或者 输入参数个数大于 2
%输出错误信息,另外注意一下 | 与 || 的区别
% 针对错误调用格式: A = myhilb(n,m,j,k,...) 或者 myhilb()
elseif (nargin == 0) || (nargin > 2)
	error('Wrong number of input arguments.');
end  % if...end 

A1 = zeros(n,m); % A1 矩阵赋值为 n 行 m 列的0矩阵(初始化)
for  i = 1:n     % i 从 1 每次加 1 ,直至 n
   for j = 1:m   % j 从 1 每次加 1 ,直至 m
      A1(i,j) = 1 / (i+j-1); % 希尔伯特矩阵
   end  % 内层循环结束
end     % 外层循环结束

if nargout == 1      % 如果输出参数个数为 1
     % 那么 A1 赋值给 A 后显示 A,调用格式 X = myhiilb(n,m)
	A = A1;         
elseif nargout == 0  % 如果输出参数个数为 0
    % 直接显示 A1,调用格式 myhiilb(n,m) 或 myhiilb(num)
	disp(A1);        % 那么直接显示 A1
end 
3. 命令行窗口的尝试
  • 尝试在命令行窗口输入一下代码,更能有效理解这个m函数

A = myhilb(3,2)
B = myhilb(3)
C = myhilb(3,2,3)
D = myhilb()
[E F] = myhilb(3,2)

参考链接:https://www.cnblogs.com/haore147/p/3623319.html

  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值