这一篇博客主要学习了:

第一,自定义函数优点有很多,比如可重复利用;容易纠错,以后直接装入大工程里(更重要的是,实参是复制给形参的,在自定义函数中运行时形参独立显示,这一点和C不一样)。

第二,通过help/lookfor 自定义函数名 快速查找到自己所写的函数(H1注释行功能)

第三,调试功能

自定义函数代码:

function  distance = dist(x1, y1, x2, y2) %写在首行
%自定义函数
%脚本文件:dist.m
%函数功能:
% 该函数用来计算笛卡尔坐标系中两点之间的距离,两个点的坐标通过形参输入()
% 学习H1注释行的使用,及函数的调用
%DIST函数:计算计算笛卡尔坐标系中两点之间的距离
%
%应用示例:
% res =dist(x1, y1, x2, y2)
%
% 定义变量:
% x1 ---位置1的x坐标
% y2 ---位置2的y坐标
% x1 ---位置1的x坐标
% y2 ---位置2的y坐标
%
% 版本记录:
% 日期 负责人 版本描述
% -- 王茂春 源代码 % 计算距离
distance = sqrt((x2-x1).^ + (y2-y1).^);

调用代码:

% 脚本文件: test_dist.m
%
% 目标: 实际调用自定义函数dist % 定义变量:
% a1 ---位置a的x坐标
% b2 ---位置b的y坐标
% a1 ---位置a的x坐标
% b2 ---位置b的y坐标
%
% 版本记录:
% 日期 负责人 版本描述
% -- 王茂春 源代码 %获取输入数据
disp('计算笛卡尔坐标系中两点之间的距离');
ax =input ('输入位置a的x坐标: ');
ay =input ('输入位置a的y坐标: ');
bx =input ('输入位置b的x坐标: ');
by =input ('输入位置b的y坐标: '); %调用函数
result =dist(ax, ay, bx, by); %输出结果
fprintf('笛卡尔坐标系中两点之间的距离是:%f\n',result);

运行效果就不说了,正确。重要的是思想!

--------------------------------------------------------------------------------

第二,通过help查找

通过lookfor查找:

第三,断点测试:

为了仔细观察工作区在函数执行前后的变化, 我们将在MATLAB调试器中加载函数dist2
和脚本文件 test_dist2。在函数加载前,加载中,加载后设置断点(如图 5.1 所示) 。
当程序中止在函数调用之前的断点,它的工作区如图 5.2(a)所示。注意工作区中只有变
量 ax,ay,bx 和 by。当程序中止在函数调用过程中的断点,它的工作区如图 5.2(b)所示。
注意工作区中只有变量 x1,x2,y1,y2 和 distance。当程序中止在函数调用后的断点,它的
工作区如图 5.2(c)所示。 注意工作区中原来的变量又重复出现, 再加上函数返回的变量 result。
函数加载前:

加载中:

加载后:

所以,这个互相独立的调试确实很好!学习了

matlab 自定义函数及调用的更多相关文章

  1. MATLAB自定义函数

    MATLAB自定义函数形式 function [a,b,c] = funname(x1,x2,x3) 输入变量 对于输入变量,MATLAB可以识别输入变量的个数,通过nargin来记录当前输入变量个数 ...

  2. LR自定义函数以及调用

    2.2.自定义函数以及调用 2.2.1.虚拟用户编程,使用C# 语言DLL 在VS中建立DLL类库项目,编写函数时使用public声明:实现函数后编译生成DLL: 在LR中建立 .Net Vuser脚 ...

  3. php学习笔记:自定义函数的调用

    PHP内置了超过1000个函数,因此函数使得PHP成为一门非常强大的语言.大多数时候我们使用系统的内置函数就可以满足需求,但是自定义函数通过将一组代码封装起来,使代码进行复用,程序结构与逻辑更加清晰. ...

  4. matlab自定义函数的五种表示(前2种重点)

    1.命令文件/函数文件+函数文件:多个M文件 2.函数文件+子函数:一个M文件 3. inline:无需M文件 4.符号表达式+subs方式:无需M文件 5.字符串+subs方式:无需M文件 第一种: ...

  5. 自定义函数和调用函数 return返回值

    1.Q: 为什么要有函数,函数是什么? A: 函数能提高应用的模块性,和代码的重复利用率 2. 函数分为两个阶段: 1.定义阶段 2.调用阶段 3.关于函数调用: 01.函数的内存地址加上()就是调用 ...

  6. 在JS中,一个自定义函数如何调用另一个自定义函数中的变量

    function aa1511() { var chengshi="马鞍山"; var shengfen="安徽省"; return shengfen+&quo ...

  7. FastReport调用Delphi中的人民币大写转换自定义函数

    FastReport调用Delphi中的人民币大写转换自定义函数   FastReport调用Delphi中的人民币大写转换自定义函数 function TJzpzEdit1.MoneyCn(mmje ...

  8. Matlab中函数定义方法

    Matlab自定义函数的六种方法 n1.函数文件+调用函数(命令)文件:需单独定义一个自定义函数的M文件: n2.函数文件+子函数:定义一个具有多个自定义函数的M文件: n3.Inline:无需M文件 ...

  9. Mysql - 存储过程/自定义函数

    在数据库操作中, 尤其是碰到一些复杂一些的系统, 不可避免的, 会用到函数/自定义函数, 或者存储过程. 实际项目中, 自定义函数和存储过程是越少越好, 因为这个东西多了, 也是一个非常难以维护的地方 ...

随机推荐

  1. HUST 1606 Naive

    预处理一下,然后o(1)询问. #include<cstdio> #include<cstring> #include<cmath> #include<str ...

  2. php字符串压缩

    在PHP中偶尔遇到字符串的压缩,比如一个长字符串,数据库开始设计的字段存不下,但是又不想改数据库字段存储长度,就可以用压缩的方式降低数据字段字符串的长度数量级,把几百个字符的字符串压缩到几十个字符.总 ...

  3. linux命令学习-4-lsof

    lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件. 在终端下输入ls ...

  4. iOS开发——Localizable.strings

    这篇写的不多,但是绝对诚意满满.不会像别人一样,要不不详细,要不罗里吧嗦一堆. 1.创建Localizable.strings文件 Command+N—>iOS—>Resource—> ...

  5. UnitOfWork实战

    企业模式之Unit Of Work模式 在开始UnitOfWork模式之前有必要回顾下我们耳熟能详的Data Access Object(DAO)模式,即数据访问对象.DAO是一种简单的模式,我们构建 ...

  6. oracle关键字(保留字)

    其实这个东西可以在oracle 上输入一个sql语句就可以得到: select * from v$reserved_words order by keyword asc;   //order 后边不是 ...

  7. UVa 10706 - Number Sequence

    题目大意:Sk表示从1到k的字符序列,如S4为1234,现如今有如下的序列S1S2...Sk,形如1 12 123 1234这样的序列,给一个数n,让你去这个序列第n个位置上的数字. 可以构建出一个S ...

  8. android入门,activity跳转,并传递message

    首先是布局文件,如下: activity_main.xml <?xml version="1.0" encoding="utf-8"?> <L ...

  9. ReactiveCocoa学习笔记--用法

    1.监测UI变量的变化 return 后把值传递下去. 1.1.输出 [self.usernameTextField.rac_textSignal subscribeNext:^(id x){ NSL ...

  10. Java 之 Servlet介绍(Java之负基础实战)

    1.介绍 Servlet是用Java编写的服务器端程序.其主要功能在于交互式地浏览和修改数据,生成动态Web内容.狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了 ...