小编Ama*_*man的帖子

为迭代函数组合定义泛型函数

让我们定义任何函数句柄foo:

foo = @(x) x*2
Run Code Online (Sandbox Code Playgroud)

我试图写一个通用函数defFun生成的Ñ个职大功能foo,即ñ的反复调用foo,它可以存储在另一个手柄功能的方式boo,就像这样:

boo = defFun(foo,n)
Run Code Online (Sandbox Code Playgroud)

例如,

foo = @(x) x^2;  
boo = defFun(foo,3);
Run Code Online (Sandbox Code Playgroud)

boo(3)将给予6561 [== foo(foo(foo(3)))]boo(2)将给予256 [== foo(foo(foo(2)))].

我尝试使用此代码编写,defFun但这些句柄处理起来很棘手.有任何想法吗?

function boo = defFun(foo,n)
   h = foo;
   for i=2:n
      h = h(h);
   end
   boo = h
end
Run Code Online (Sandbox Code Playgroud)

matlab function handle

7
推荐指数
1
解决办法
473
查看次数

标签 统计

function ×1

handle ×1

matlab ×1