VBGood網站全文搜索 Google

搜索VBGood全站網頁(全文搜索)

VB愛好者樂園(VBGood)

 找回密碼
 立即注冊
搜索
查看: 698|回復: 1
打印 上一主題 下一主題

[求助] 和大家請教取數的思路

[復制鏈接]
跳轉到指定樓層
1
發表于 2019-9-20 18:47:01 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請教各位老師 思路:
      從1,2,3,4, 5 里面任取2個數字,共有哪幾種取法,用VB怎么寫?
2
 樓主| 發表于 2019-9-20 21:39:47 | 只看該作者
已經解決,如下:
  1. Dim TxtSum$
  2. Dim Out1() As Integer, Used1() As Boolean, DuiLie() As String, MyCount1%

  3. Private Sub Command1_Click()
  4.     Dim SideLength%, I%, J%, K%, L%, T1$
  5.    
  6.     '設置邊長(總個數)
  7.     SideLength = 5
  8.    
  9.     '讀取數組元素
  10.     For I = 1 To SideLength
  11.         T1 = T1 & " " & I
  12.     Next
  13.     DuiLie = Split(Trim(T1), " ")
  14.    
  15.     ReDim Out1(SideLength) As Integer
  16.     ReDim Used1(SideLength) As Boolean
  17.    
  18.     MyCount1 = 0: TxtSum = ""
  19.     For I = 1 To SideLength
  20.         Call 遞歸求組合(0, SideLength, I)
  21.     Next
  22.     TxtSum = Mid(TxtSum, 2)
  23. End Sub

  24. Sub 遞歸求組合(ByVal Deep1 As Integer, ByVal SourceNum As Integer, ByVal EachGetNum As Integer)
  25.     Dim I%, LinStr$
  26.     If Deep1 = EachGetNum Then
  27.         MyCount1 = MyCount1 + 1
  28.         LinStr = ""
  29.         For I = 0 To EachGetNum - 1
  30.             LinStr = LinStr & DuiLie(Out1(I) - 1) & ","
  31.         Next I
  32.         LinStr = Left(LinStr, Len(LinStr) - 1)
  33.         TxtSum = TxtSum & "-" & LinStr
  34.     End If
  35.    
  36.     For I = 1 To SourceNum
  37.         If Not Used1(I) Then
  38.             If Deep1 = 0 Then
  39.                 Out1(Deep1) = I
  40.                 Used1(I) = True
  41.                 Call 遞歸求組合(Deep1 + 1, SourceNum, EachGetNum)
  42.                 Used1(I) = False
  43.             Else
  44.                 If Out1(Deep1 - 1) < I Then
  45.                     Out1(Deep1) = I
  46.                     Used1(I) = True
  47.                     Call 遞歸求組合(Deep1 + 1, SourceNum, EachGetNum)
  48.                     Used1(I) = False
  49.                 End If
  50.             End If
  51.         End If
  52.     Next
  53. End Sub
復制代碼

VB取數.rar

8.7 KB, 下載次數: 84

VB取數

回復 支持 反對

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

文字版|手機版|小黑屋|VBGood  

GMT+8, 2020-1-7 12:40

VB愛好者樂園(VBGood)
快速回復 返回頂部 返回列表
快乐十分开奖结查询