在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
ASP函数rnd() 函数rnd()返回一个0到1之间的随机数。 使用方法如下:
如果你想用rnd()函数来返回某一范围内的整数,比方说大于等于0而小于等于特定整数upperbound的数字,你可以使用如下方法:
例如,下面的语句将返回一个0和5之间的整数,包括0和5:
如果你想获得一个处在某个范围内的随机数,该范围有一个大于0的下界lowerbound,可以使用如下的方法:
例如,下面的脚本产生一个50到75之间的整数,包括50和75:
但是,有个问题,一个随机数产生了,但是每次都是同样的随机数。这也许会让你十分不解,有一个特殊的语句可以帮助解决这个问题,那就是randomize语句。 randomize语句用来强制函数rnd使用一个新的随机数序列。randomize语句通过计算机的系统计时器,为函数rnd提供一个新的种子值。 函数RND()是一个非常重要的函数。如果你想建立一个随机的问候语,一个日期的随机提示,或者甚至一个游戏,你将要使用这个函数。
用你想产生的最大随机数代替表达式upperbound。例如,下面的脚本返回一个0和5之间的数,包括0和5:
例如,下面的脚本产生一个50到75之间的随机数(包括50和75):
无论何时使用函数RND(),它将以同样的顺序返回同样的随机数,这也许另你吃惊。考虑如下的例子: <% Pick_Greeting=INT((2+1)*RND) SELECT CASE Pick_Greeting CASE 0 Greeting=”Welcome!” CASE 1 Greeting=”Hello!” CASE 2 Greeting=”Happy to see you!” END SELECT %> <%=Greeting%> 这个脚本建立并打印一个随机的问候语。但是,它有可能并不按你想象的方式工作。无论何时有人下载了包含这段脚本的网页,将有同样的随机问候语被打印。如果有人多次回到这个网页,他或她将得到同样的问候。一个随机数产生了,但是每次都是同样的随机数。 <% RANDOMIZE Pick_Greeting=INT((2+1)*RND) SELECT CASE Pick_Greeting CASE 0 Greeting=”Welcome!” CASE 1 Greeting=”Hello!” CASE 2 Greeting=”Happy to see you!” END SELECT %> <%=Greeting%> 这个脚本可以正确工作。每次执行这个脚本时,将会产生一个新的随机问候。RANDOMIZE语句强制函数RND()使用新的随机数序列。 <% CONST upperbound=9,iterations=100 REDIM DIST(upperbound) RANDOMIZE FOR i=1 to iterations rnd_num=INT((upperbound+1)*RND) DIST(rnd_num)=DIST(rnd_num)&”#” NEXT FOR i=0 to upperbound %> <%=i&” : “&DIST(i)%><BR> <% NEXT %> 这段脚本在0到9之间产生100个随机数。它跟踪对于每一个值有多少个随机数产生。最后,它打印一个代表结果的条形图。 |
请发表评论