首页 > 代码库 > 【ASP】在特定的范围内产生N个不同的随机数
【ASP】在特定的范围内产生N个不同的随机数
ASP产生一个随机数不难,就两条特定语句:
<% Randomize x=int(20*rnd+1) %>
以上的两条语句,表示从1~20这个范围内产生随机数,并且这些随机数都是整数。
那么,要在1~20连续产生20个不同的随机数,也就是随机排列1~20,该怎么解决呢?
首先,我们需要数组来存储这20个不同的随机数。
ASP可以用如下的两种方式定义一个容量为20数组:
<% dim number(20) %>
<% dim number redim number(20) %>
其中,第二组后接number= Session("xx") 能接住前一页面通过Session("xx")=number,传递过来的number数组。
要在1~20连续产生20个不同的随机数,也就是随机排列1~20的基本思想是:
首先在1~20产生一个随机数X,然后对这个之前产生的数据进行遍历,判断是否存在有数等于这个新产生的随机数的,如果有,立flag,
然后对之前的数据遍历完毕之后,判断flag是否立起来,
如果是,就不添加这个随机数进数组,重新产生随机数并收起flag,再重新遍历已有的数据中是否已有这个随机数,
如果否,就添加,直到20个数据产生完毕。
最后输出这个20个数据
具体实现的代码如下:
可以发现,每次刷新这个页面,此20个数据都是不同的。
【ASP】在特定的范围内产生N个不同的随机数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。