Foxtable(狐表)用户栏目专家坐堂 → 如何计算任意位数的随机数


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

主题:如何计算任意位数的随机数

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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
如何计算任意位数的随机数  发帖心情 Post By:2014/11/24 16:16:00 [只看该作者]

标题不一定正确,具体需求是这样的

比如一个数9

现在要用一种方法来表示:A36  A表示表达式整数起始位置,3+6表示9

比如12

表示为:A0111或A0102 或A1011或A1020

比如369

表示为A123327或者A124218

比如69.8

表示为A4227B26 B表示小数开始位置

总结来说就是用2个随机数的和来表达某个数的对应位置的数


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


加好友 发短信
等级:一尾狐 帖子:431 积分:3214 威望:0 精华:2 注册:2011/9/10 21:35:00
  发帖心情 Post By:2014/11/24 16:21:00 [只看该作者]

用rank生成0到(x-1)之间随机的一个数,另外一个数就x-去这个随机数

 

比如你是8 ,你用随机生成一个小于8的数,也许是3.那么另外一个就是5(8-3)


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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2014/11/24 16:23:00 [只看该作者]

谢谢  有思路了 不过想问下 如何判断这个数字有多少位呢,然后分别取到对应位置的整数?


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/11/24 16:24:00 [只看该作者]

tostring.length

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/24 16:26:00 [只看该作者]

 自己扩展一下

 

Dim num As Double = 369
For Each n As String In cstr(num)
    Dim n1 As Integer = Rand.Next(n)
    Dim n2 As Integer = n - n1
    output.show(n1 & n2)
Next


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


加好友 发短信
等级:一尾狐 帖子:431 积分:3214 威望:0 精华:2 注册:2011/9/10 21:35:00
  发帖心情 Post By:2014/11/24 16:26:00 [只看该作者]

Length

返回字符串的长度,不管是英文字符还是中文字符,在计算长度的时候都是1。

例如在命令窗口输入:

Dim s As String = "ABC中国DEF"
Output.show(s.Length)

执行之后,显示的结果为8。

再例如:

Dim s As String = "中国人"
For
i As Integer = 0 To s.Length - 1
    Output.Show(s.Chars(i))

Next

 

在命令执行上述代码后,会显示:




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


加好友 发短信
等级:狐精 帖子:3361 积分:24808 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2014/11/24 17:34:00 [只看该作者]

搞定了 谢谢各位


 回到顶部