乐码库:一个极速、放心、纯净的下载站! 更新: 资源发布
  • 您的位置:首页 > 技术文档 > ASP编程 > ASP生成随机数ASP生成不重复随机数
  • 收藏本页
      ASP生成随机数ASP生成不重复随机数
      发布时间:2016-10-28 10:51:06 关键词: ASP,随机数
      内容简介:这篇文章主要介绍了ASP生成不重复随机数的方法,需要的朋友可以参考下

    ASP生成随机数:

    Randomize '纯随机,不重复 
    Response.write Int((999999999 * Rnd) + 111111111) '生成111111111到999999999之间随机数
    

    ASP不重复随机数:
    方法一: 已测
    使用的时候需要注意里面的分割字符串的字符。

     
    <% 
    '生成的是一个不重复的数组 
    Function GetRnd(lowerNum,upperNum) 
    Dim unit,RndNum,Fun_X 
    unit = upperNum - lowerNum 
    Redim MyArray(unit) 
    For Fun_I=0 To unit 
    myArray(Fun_I)= lowerNum + Fun_I 
    Next 
    For Fun_I=0 To round(unit) 
    RndNum = getRndNumber(Fun_I,unit) 
    Fun_X = myArray(RndNum) 
    myArray(RndNum)=myArray(Fun_I) 
    myArray(Fun_I)=Fun_X 
    Next 
    GetRnd = Join(myArray) 
    End Function 
    Function getRndNumber(lowerbound,upperbound) 
    Randomize 
    getRndNumber=Int((upperbound-lowerbound+1)*Rnd+lowerbound) 
    End Function 
    Response.Write GetRnd(1,1000) 
    %> 
    

    方法二:

    <% 
    function rndarray(istart,iend,sum) 
    dim arrayid(),i,j,blnre,temp,iloop,eloop 
    redim arrayid(sum-1) 
    i=0 
    iloop=0 
    eloop=0 
    blnre=false 
    randomize 
    do while i<sum 
    temp=int(rnd*(iend-istart+1)+istart) 
    if i=0 then 
    arrayid(0)=temp 
    i=i+1 
    iloop=iloop+1 
    else 
    for j=0 to i-1 
    if arrayid(j)=temp then 
    blnre=true 
    iloop=iloop+1 
    exit for'这一句很重要,防止多余的循环 
    else 
    iloop=iloop+1 
    end if 
    next 
     if blnre=false then 
     arrayid(i)=temp 
     i=i+1 
     else 
     blnre=false 
     end if 
    end if 
    loop 
    rndarray=join(arrayid) 
    end function 
    response.write rndarray(1,5,1) '开始数字,结尾数字,生成多少个 
    %>
    

      最新更新
      热门排行榜