Foxtable(狐表)用户栏目专家坐堂 → 如何随机取数?


  共有8308人关注过本帖树形打印复制链接

主题:如何随机取数?

帅哥哟,离线,有人找我吗?
lihe60
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
如何随机取数?  发帖心情 Post By:2013/2/21 9:10:00 [只看该作者]

运行窗口1,目的是每次10个数里随机取4个数。

多运行“button1"按钮,有时不能取4个随机数,有时只取3个随机数。如何是每次都能取4个随机数。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:随机取数.foxdb


 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/21 9:21:00 [只看该作者]

 因为随机数会有重复的,你对第二列再加一下查找判断吧。

 回到顶部
帅哥哟,离线,有人找我吗?
lihe60
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2013/2/21 9:27:00 [只看该作者]

如果随机在10个数里取9个数,又如何判断?

望小林上传一个例子。


 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/21 9:28:00 [只看该作者]

 代码。

For Each r As Row In Tables("表A").Rows
    r("第二列")=Nothing
    r.save()
Next

Dim count As Integer = 0
Dim ls As New List(Of Integer)
Do While count < 4
    Dim Val3 As Integer = Rand.Next(1,10)
    If ls.Contains(val3) = False Then
        Dim dr As DataRow=DataTables("表A").FINd("第一列=" & val3)
        ls.Add(val3)
        If dr IsNot Nothing
            dr("第二列")=val3
            dr.save()
            count += 1
        End If
    End If
Loop

Dim t As Table=e.Form.controls("table1").Table
Dim cmd As New SQLCommand
cmd.commandtext="select 第二列 from {表A} where 第二列 Is not null"
t.DataSource=cmd.ExecuteReader()

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/2/21 9:33:00 [只看该作者]

以下是引用lihe60在2013-2-21 9:27:00的发言:

如果随机在10个数里取9个数,又如何判断?

望小林上传一个例子。


不过如果是 10个取9个,又不重复的话,最好倒过来思考。剔除某一个值。

或者你自己打乱这10个值,然后按顺序获取。

 回到顶部