Calling the same function from within the function??
显示 更早的评论
So I ran into this very interesting file from the file exchange...
Where the function calls itself around line 140 (its between 138 thru 144 as I started to play with some things...). This was wild to me. I have never attempted this and was wondering if there are other examples out there.
Does this work for C++ or Fortran?
Comments? Why is this blowing my mind?
采纳的回答
更多回答(3 个)
ES
2013-10-9
2 个投票
It is mere recursion supported by most high level languages.
Jan
2013-10-9
1 个投票
I'm convinced that recursion does not blow your mind. You only have to get familiar with it. Then it is useful in many situations. A standard example for a recursive definition is the Fibonacci sequence (ask WikiPedia for details). And this is also a good example, why recursive functions are in many cases not efficient.
Another typical example are "Divide and Conquer" algorithms: The program splits the problem into two halves and provide both as inputs to itself until the problems are such small, that a solution is trivial. E.g. you can find the maximum value of a vector by splitting the vector until both parts have a single element only. This is a nice solution, but not fast.
Simon
2013-10-9
1 个投票
Hi!
For Fortran77 programs recursive functions (or subroutines) are not possible, as a standard compiler gives you a compile time error. Altough there are ways to trick the compiler ...
Fortran90/95 supports recursion as long as the specific function/subroutine is explicitly labeled as a recursive function.
类别
在 帮助中心 和 File Exchange 中查找有关 Fortran with MATLAB 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!