嵌套循环的另一种写法
时间:2011-11-23
来源:互联网
VB code
这是利用枚举所有组合来匹配特定的数,但是现在有一个问题,我的数组换成动态的,也就没有办法知道要嵌套几层循环,所以上方法行不通了。问:怎么在动态数组的情况下枚举所有组合呢?
Dim i As Integer Dim j As Integer Dim k As Integer Dim z As Integer Dim value As Integer Dim Numarr(3) As Integer Numarr(0) = 0: Numarr(1) = 30: Numarr(2) = 50: Numarr(3) = 100 value = 310 For i = 0 To 3 For j = 0 To 3 For k = 0 To 3 For z = 0 To 3 If value = Numarr(i) + Numarr(j) + Numarr(k) Then Debug.Print Numarr(i); Numarr(j); Numarr(k) Else Debug.Print Numarr(i); Numarr(j); Numarr(k) End If Next Next Next Next
这是利用枚举所有组合来匹配特定的数,但是现在有一个问题,我的数组换成动态的,也就没有办法知道要嵌套几层循环,所以上方法行不通了。问:怎么在动态数组的情况下枚举所有组合呢?
作者: buxchang 发布时间: 2011-11-23
ubound(数组,维度)
作者: alifriend 发布时间: 2011-11-23
不定的用递归来做吧
作者: jhone99 发布时间: 2011-11-23
用递归可以使程序变得简单易读。在不追求效率的情况下是不错的选择。
作者: Veron_04 发布时间: 2011-11-23
仔细看来看
If value = Numarr(i) + Numarr(j) + Numarr(k) Then
Debug.Print Numarr(i); Numarr(j); Numarr(k)
Else
Debug.Print Numarr(i); Numarr(j); Numarr(k)
End If
什么意思?两种情况有区别吗?
If value = Numarr(i) + Numarr(j) + Numarr(k) Then
Debug.Print Numarr(i); Numarr(j); Numarr(k)
Else
Debug.Print Numarr(i); Numarr(j); Numarr(k)
End If
什么意思?两种情况有区别吗?
作者: Veron_04 发布时间: 2011-11-23
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28