这一篇博客主要学习了:

第一,自定义函数优点有很多,比如可重复利用;容易纠错,以后直接装入大工程里(更重要的是,实参是复制给形参的,在自定义函数中运行时形参独立显示,这一点和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. CodeForces 622B The Time

    水题. #include <stdio.h> #include <algorithm> #include <string.h> #include <queue ...

  2. IOS 清除UIWebview的缓存以及cookie

    cookie清除              NSHTTPCookie *cookie;            NSHTTPCookieStorage *storage = [NSHTTPCookieS ...

  3. iOS开发实现Label中多颜色多字体

     UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(8, 100, 300, 30)]; label.textColor = wor ...

  4. JDBC操作数据时中文乱码

    /** * DB地址 */ private static final String DB_URL="jdbc:mysql://localhost:3306/db_book?useUnicod ...

  5. iOS常用的第三方库GitHub地址

    MJRefresh https://github.com/CoderMJLee/MJRefresh#期待 Facebook-POP https://github.com/facebook/pop /* ...

  6. IOS开发-UI学习-NSMutableAttributedString(带属性的字符串)的使用

    带属性的字符串: NSString *aa = @"hellochinaIloveYou!"; NSMutableAttributedString *mas = [[NSMutab ...

  7. Badboy安装与使用

    Badboy是一个录制web脚本的工具 1.下载Badboy:http://www.badboy.com.au/download/add 2.启动Badboy,认识主界面 3.使用Badboy录制we ...

  8. AJAX异步加载

    AJAX含义: 即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX可以跨 ...

  9. Html5 touch event

    HTML5 for the Mobile Web: Touch Events POSTED BY RUADHAN - 15 AUG 2013 See also... Touch-friendly Dr ...

  10. 单例--iOS

    GCD单例: static ModulesManager * sharedManager = nil; + (id)sharedInstance { static dispatch_once_t on ...