|
这是“VBA80第46集组合之递归算法.xls”模块例2中的代码- Sub 组合()
- k = 0
- Dim t
- t = Timer
- Erase arr1
- arr = Range("a2:a" & Range("a65536").End(xlUp).Row)
- g = [b2]
- h = [c2]
- zuhe 1, 0, "", 0
- Range("d2").Resize(k) = arr1
- [e1] = k1
- MsgBox "找到 " & k & " 个解! 花费" & Format(Timer - t, "0.00") & "秒"
- End Sub
- Sub zuhe(x%, z%, sr$, gg As Byte)
- If z + arr(x, 1) = h And gg = g - 1 Then
- k = k + 1
- arr1(k, 1) = sr & arr(x, 1) & "=" & h
- Exit Sub
- End If
- If x < UBound(arr) And z < h Then
- If z + arr(x, 1) < h Then
- zuhe x + 1, z + arr(x, 1), sr & arr(x, 1) & "+", gg + 1
- End If
- zuhe x + 1, z, sr, gg
- End If
- End Sub
复制代码 其中第二段开头Sub zuhe(x%, z%, sr$, gg As Byte)中的%、$都是表示什么意思,在什么情况下使用?
请高手指导一下我这个菜鸟。
|
|