关于随机数的问题??????????

hexinyu2005 2006-10-18 09:01:58
我想取1--4之间的随机数

Randomize(Time)
SelectValue=Int((4 * Rnd) + 1)

但是好象出来的数字不是很平衡,有的骗多,有的骗少

请问还有别的什么办法可以好点吗
...全文
170 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
超级大笨狼 2006-11-09
  • 打赏
  • 举报
回复
<SCRIPT LANGUAGE=vbscript >
'洗牌
Dim N,S,D,P
P=54'牌的数量
Set D = CreateObject("Scripting.Dictionary")
do while D.Count<P
Randomize
N=Int(P * Rnd + 1)
if not D.Exists(cstr(N)) then
D.Add cstr(N),cstr(N)
end if
loop
for each K in D.Keys
S=S & K & " "
next
msgbox replace(trim(S)," ",",")
</SCRIPT>

access
select top 5 * from [table] order by rnd(id)

sql server
select top 5 * from [table] order by newid()
飘零雾雨 2006-10-18
  • 打赏
  • 举报
回复
试过没有不平衡!
myvicy 2006-10-18
  • 打赏
  • 举报
回复
不应该。
你输出了多少次,发现不平衡的?
luhuso 2006-10-18
  • 打赏
  • 举报
回复
Randomize
aaa= Int(Rnd * 4)+1
response.write(aaa)
cjl8882000 2006-10-18
  • 打赏
  • 举报
回复
随机数本来就是随便选的啊 当然会有的偏多有的偏少了!~
如果你需要让它平衡或者是成一定比例的话 就要用程序控制啊!~

生成一个数就放到数组里 然后再取下一个数 当符合你的条件时(比如是成一定比例了) 就再存入数组 不符合条件时就放弃 再选一次

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧