首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

从1-9中选择3个数字的所有组合,如何计算呢?

2012-01-07 
从1-9中选择3个数字的所有组合,怎么计算呢?急!有从1到9共计9个数字,请问,如果三个一组,可以组合成多少个“

从1-9中选择3个数字的所有组合,怎么计算呢?急!
有从1到9共计9个数字,请问,如果三个一组,可以组合成多少个“三国联盟”?

备注:213组合和312组合,代表同一个组合,只要有三个数字在一起即可。

请问用vb如何实现,把所有组合都算出來?

[解决办法]
稍改一下:

VB code
Option ExplicitSub Carry(a() As Long, ByVal m As Long, ByVal n As Long)    Dim Idx As Long    Idx = n    While a(Idx) = m        Idx = Idx - 1        m = m - 1    Wend    a(Idx) = a(Idx) + 1    While Idx < n        Idx = Idx + 1        a(Idx) = a(Idx - 1) + 1    WendEnd SubSub PrintCom(a() As Long, n As Long)    Dim i As Long    ReDim tmp(n)    For i = 1 To n        tmp(i) = a(i)    Next    Debug.Print Trim(Join(tmp))End SubPrivate Sub Command1_Click()        Dim m As Long, n As Long    Dim i As Long    m = 9    n = 3    ReDim a(m) As Long    For i = 1 To m        a(i) = i    Next    a(0) = -1    Do        DoEvents        Call PrintCom(a, n)        Call Carry(a, m, n)    Loop Until a(0) = 0    End Sub
[解决办法]
问题描述的有点不清楚

到底 "3个一组" 是算整个 "三国联盟" 还是算三国联盟中的一国

你的问题如果意思是 1~9 9个数字中 任取3个数字 有多少种组合 那就是 c(9,3)=84种
我1楼就是按照这个意思来解答的

热点排行