用VB編寫接近實際的抽獎程序

發表于:2007-07-14來源:作者:點擊數: 標簽:
近來彩票風行全國,普通人將他作為改變生活的希望,國家將他作為創收的一個項目。筆者設計了一個頗有味道的彩票程序,希望能幫助您重獎,如果您中獎請通知我,呵呵。 '本程序以江蘇風采福利彩票(36選7)為例 '由于福利彩票是從36個球中選出7個球,有一些資料上
  近來彩票風行全國,普通人將他作為改變生活的希望,國家將他作為創收的一個項目。筆者設計了一個頗有味道的彩票程序,希望能幫助您重獎,如果您中獎請通知我,呵呵。

  '本程序以"江蘇風采福利彩票"(36選7)為例

  '由于福利彩票是從36個球中選出7個球,有一些資料上介紹是用隨機函數產生一個數,為了避產生重復的數故而進行比較,重復時舍棄重選?;蛘咦?個變量使它們不同。

  '本程序特點接近實際,ListBox作為數據容器,每產生一個數將其移去(RemoveItem方法)。產的數放在數組中,最后再排序。

  '在窗體中放置兩個命令按鈕(CmdRnd,CmdExit);包含5個元素的控件數(text1(0)~text1(4));一個組合框控件List1,將其Visible屬性設置為False。

  '注:可以用ComboBox控件代替ListBox控件,只要將程序中的ListBox控件(list1)改
為ComboBox控件(combo1)即可。

  '聲明

  Private Const AllData = 36 '總數為36

  Private Const Choose = 7 '要選出的數為7個

  Dim Num(Choose - 1) As Byte '數組用來存放選出的數

  Private Sub CmdRnd_Click() '產生隨機數

  Dim i, j, RndData

  For j = 0 To 4 '產生5組數據

   For i = 1 To AllData

    List1.AddItem i

   Next i

   For i = 0 To Choose - 1

    Randomize '初始化隨機數的種子數

    RndData = Int(((AllData - i) * Rnd) + 1)

    Num(i) = List1.List(RndData - 1)

    List1.RemoveItem (RndData - 1)

   Next i

   PopSort '調用冒泡排序

   Text1(j) = " "

   For i = 0 To Choose - 1

    If Num(i) < 10 Then

     Text1(j) = Text1(j) & "0" & Num(i) & " " '小于10的數在前面補“0”

    Else

     Text1(j) = Text1(j) & Num(i) & " "

    End If

   Next i

   List1.Clear '清除總數容器

  Next j

  End Sub

  Sub PopSort() '冒泡排序

    Dim i, j, Temp As Byte

    For i = Choose - 1 To 1 Step -1

     For j = Choose - 1 To 1 Step -1

      If i >= Choose - 1 - j Then

       If Num(j) < Num(j - 1) Then

         Temp = Num(j - 1)

         Num(j - 1) = Num(j)

         Num(j) = Temp

       End If

      End If

     Next j

    Next i

   End Sub

  Private Sub CmdExit_Click() '退出程序

   Unload Me

  End

 End Sub

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97