| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2572 人关注过本帖
标题:怎么样动态确定循环嵌套的层数
取消只看楼主 加入收藏
zfc123
Rank: 2
等 级:论坛游民
帖 子:136
专家分:39
注 册:2007-5-4
结帖率:84.62%
收藏
 问题点数:0 回复次数:7 
怎么样动态确定循环嵌套的层数
由于事先不知道程序循环的层数,需在程序运行时指定,请问这种循环要怎么实现。
我要得到结果是,
比如两层嵌套为:   三层嵌套为:
a0,b1        a0,b0,c1
a0,b2                a0,b0,c2
a1,b0                a0,b1,c0
a1,b1                ....省略
a1,b2                a2,b1,c2
a2,b0                a2,b2,c0
a2,b1                a2,b2,c1
即要在前面加一个变量字母,或者要把每一个组合中的不同成员,分别存储起来,因为最后我要对每组组合进行比较。
搜索更多相关主题的帖子: 嵌套 动态 
2008-02-27 11:31
zfc123
Rank: 2
等 级:论坛游民
帖 子:136
专家分:39
注 册:2007-5-4
收藏
得分:0 
谁能帮帮我想想办法呀,看到有人用递归解决类似问题,那能不能变通到我这个问题上呢
2008-02-27 12:51
zfc123
Rank: 2
等 级:论坛游民
帖 子:136
专家分:39
注 册:2007-5-4
收藏
得分:0 
a,b,c分别代表3个帐号,是不固定的。
其中a,b,c分别有3种状态0,1,2,不同状态下会有不同数值。
想要结果,就是在所有可能的组合上,计算出每组组合的值,比如:
0,0,1组合时,a=4000,b=3000,c=-1000,此时的结果就是6000
0,1,1组合时,a=4000,b=-2000,c=-1000,此时结果就是1000
我想要在,a,b,c.....数量未知时,(a,b,c程序)通过程序得到所有可能组合,且分别得出每组结果.
2008-02-27 16:15
zfc123
Rank: 2
等 级:论坛游民
帖 子:136
专家分:39
注 册:2007-5-4
收藏
得分:0 
For i = 0 To 2
    For n = 0 To 2
        For x = 0 To 2
            Select Case i '最外层循环代表a根据i3种不同状态对a进入不同赋值
                Case 0
                a = 4000
                Case 1
                a = -2000
                Case 2
                a = 3000
            End Select
            Select Case n '依次代表b,c根据n,x3种不同状态对b,c进入不同赋值
                Case 0
                b = 3000
                Case 1
                b = -2000
                Case 2
                b = 1000
            End Select
            Select Case x
                Case 0
                c = 5000
                Case 1
                c = -2000
                Case 2
                c = 3000
            End Select
            yy = i + n + x '用一个变量把每次结果存储起来
            jg(yy) = a + b + c
        Next
    Next
Next
2008-02-27 17:11
zfc123
Rank: 2
等 级:论坛游民
帖 子:136
专家分:39
注 册:2007-5-4
收藏
得分:0 
0,1,2分别代表三种不同状态,无法确定的只有a,b,c的数量,其它都可以确定。
上面是假设只有a,b,c的时候我的思路。
2008-02-27 17:15
zfc123
Rank: 2
等 级:论坛游民
帖 子:136
专家分:39
注 册:2007-5-4
收藏
得分:0 
谢谢,上面的例子,是我为说明问题临时写的,不一定对,只为说明问题,非常感谢版主的热心帮助,也希望我的问题能够在此得以解决。
2008-02-27 17:58
zfc123
Rank: 2
等 级:论坛游民
帖 子:136
专家分:39
注 册:2007-5-4
收藏
得分:0 
4000   -3000   2000
3000   -1000   1000
8000   -7000   3000
可能是我的思路有问题,我把我的问题再描述一下,看能不能帮我想想办法,由于不能贴图,就把上面数据当成一个表格,其中每一行是一条记录,是程序运行时可以添加删除的,每一条记录有3个不同的值,每个记录的3个值是可以任意组合的,比如:4000,3000,8000  4000,-1000,-7000  4000,-1000,3000.....
我想要得到他们所有的组合,但问题是行数是不固定的。如果固定可以按我前面的思路去做,现在看来,要实现很难,请问版主这个问题有没有别的解法。谢谢
2008-02-28 10:17
zfc123
Rank: 2
等 级:论坛游民
帖 子:136
专家分:39
注 册:2007-5-4
收藏
得分:0 
谢谢,我先试试,不懂再问
2008-03-04 20:46
快速回复:怎么样动态确定循环嵌套的层数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016816 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved