文章预览
学习Excel技术,关注微信公众号: excelperfect 标签: VBA 递归函数或过程是再次调用自己的过程或函数。递归编程的一个优点是程序代码变得更短、更优雅。此外,在许多情况下,递归调用是对其进行编程的唯一方法。在本文中,将用 VBA 的几个例子来解释递归。 计算阶乘 VBA 没有内置函数来计算数字的阶乘。你可以使用 VBA 创建计算阶乘的自定义函数,如下: Function FactorialLoop(x As Byte) As Double Dim i As Byte FactorialLoop = 1 For i = 1 To x FactorialLoop = FactorialLoop * i Next i End Function 该函数是通过循环来进行计算的。然而,如果使用递归,则代码如下: Function FactorialRecursive(x As Byte) As Double FactorialRecursive = 1 If x > 1 Then FactorialRecursive = x * FactorialRecursive(x - 1 ) End Function 可以看到函数调用自身。该函数使用性质: n=n* ( n-1
………………………………