Matlab定义子函数

上篇博客介绍了在Matlab中自己定义简单函数的方法,本篇博客将介绍定义子函数的方法。本文承接上篇博客的样例,即随机生成一个3行4列的矩阵,矩阵中的元素设定上下限为(low,high)。并返回矩阵全部元素的和。

.m文件代码例如以下所看到的:

function [a, s] = myRand(low, high)
a = low + rand(3,4)*(high-low);
v = a(:);
s = sum(v);
end



如今,使用子函数实现上述函数的功能。代码例如以下所看到的:

function [a, s] = myRand(low, high)
a = low + rand(3,4)*(high-low);
s = sumAllElement(a);

function sum_a = sumAllElement(M)
v = M(:);
sum_a = sum(v); 
上述代码定义了一个子函数sum_a。其被函数myRand所调用。须要注意的是,上述两个函数都没有以"end"keyword结尾。假设函数myRand以"end"keyword结尾,则子函数sum_a必须以"end"keyword结尾。反之亦然,否则会报错。

在command window中运行myRand命令。得到的结果例如以下:

>> [x ss] = myRand(2,4)
x =
    2.9736    2.6127    3.6353    2.7572
    2.8717    3.0170    3.5897    3.6232
    2.8936    3.0215    3.2886    3.0657
ss =
   37.3497



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值