• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ASP随机数RND()使用方法

    ASP函数rnd()

    函数rnd()返回一个0到1之间的随机数。

    使用方法如下:

    response.write rnd() '其可能的返回值:0.2357746

    如果你想用rnd()函数来返回某一范围内的整数,比方说大于等于0而小于等于特定整数upperbound的数字,你可以使用如下方法:

    response.write int((upperbound+1)*rnd)

    例如,下面的语句将返回一个0和5之间的整数,包括0和5:

    response.write int((5+1)*rnd)

    如果你想获得一个处在某个范围内的随机数,该范围有一个大于0的下界lowerbound,可以使用如下的方法:

    response.write int((upperbound-lowerbound+1)*rnd+lowerbound)

    例如,下面的脚本产生一个50到75之间的整数,包括50和75:

    response.write int((75-50+1)*rnd+50)

    但是,有个问题,一个随机数产生了,但是每次都是同样的随机数。这也许会让你十分不解,有一个特殊的语句可以帮助解决这个问题,那就是randomize语句。

    randomize语句用来强制函数rnd使用一个新的随机数序列。randomize语句通过计算机的系统计时器,为函数rnd提供一个新的种子值。

    函数RND()是一个非常重要的函数。如果你想建立一个随机的问候语,一个日期的随机提示,或者甚至一个游戏,你将要使用这个函数。

    函数RND()返回一个0到1之间的随机数。这里有这个函数的一个例子及其可能的返回值:
    %=RND()%>
    0.7055643
    典型情况下,你更感兴趣的是用这个函数来返回处在一定范围内的整数。要返回一个大于等于0而小于某个特定整数的数字,你可以使用如下的语句:

    %=INT((upperbound+1)*RND)%>

    用你想产生的最大随机数代替表达式upperbound。例如,下面的脚本返回一个0和5之间的数,包括0和5:
    %=INT(5+1)*RND)%>
    如果你想产生一个处在某个范围内的随机数,该范围有一个大于0的下界,可以使用如下的脚本:

    %=INT((upperbound – lowerbound + 1)*RND+lowerbound)%>

    例如,下面的脚本产生一个50到75之间的随机数(包括50和75):

    %=INT((75-50+1)*RND+50)%>

    无论何时使用函数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语句用来强制函数RND()使用一个新的随机数序列。RANDOMIZE语句通过计算机的系统计时器,为函数RND()提供一个新的种子值。下面的例子显示了如何修改上面的例子,使其正确工作:

    %
    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()使用新的随机数序列。
    最后,如果你对函数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个随机数。它跟踪对于每一个值有多少个随机数产生。最后,它打印一个代表结果的条形图。

    您可能感兴趣的文章:
    • asp随机数 随机产生N位由数字和字母组成的密码
    • asp实现生成由数字,大写字母,小写字母指定位数的随机数
    • ASP中一个用VBScript写的随机数类
    • 深思 PHP 数组遍历的差异(array_diff 的实现)
    • ASP生成随机数 ASP生成不重复随机数
    上一篇:ASP中巧用Split()函数生成SQL查询语句的实例
    下一篇:asp中的Rnd 函数
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ASP随机数RND()使用方法 ASP,随机数,RND,使用方法,