网络编程 
首页 > 网络编程 > 浏览文章

可用的ASP无重复数字随机函数, 数组实现, 并应用于随机显示记录集

(编辑:jimmy 日期: 2025/2/27 浏览:3 次 )
经站长测试可用的ASP无重复数字随机函数, 数组实现, 并应用于随机显示记录集
作用:
本函数适用于随机显示小数量的随机不重复数字
本函数适用于显示小数量的随机不重复记录集
为了不影响效率, 上限超过一千, 不建议使用本函数
shawl.qiu
2006-09-06
 http://blog.csdn.net/btbtd
主内容: 函数及应用函数随机显示100条记录
linenum 
复制代码 代码如下:
<%  
    dim rs, rNum  
    dim temp  
    set rs=createObject("adodb.recordset")  
        rs.open "select top 100 * from rnd_v1",conn,1  
        rNum=rs.recordCount-1  
        for each temp in fRndNoRpt(0,rNum)  
            rs.move temp  
            response.write rs("sbcat")  
            response.write "<br/>"  
            rs.movefirst  
        next  
        rs.close  
    set rs=nothing 'shawl.qiu code'  
    function fRndNoRpt(lwNum,upNum)  
    ''''''''''''''''''''''''''''''''''''''''''''  
    ' ASP 无重复数字随机函数, 数组实现, By shawl.qiu  
    ' 2006-09-06  
    '   http://blog.csdn.net/btbtd  
    '''''''''''''''''''''''''''''''''  
    ' 注意: 随机数超过1000, 不建议使用本函数.  
    '''''''''''''''''''''''''''''''''  
    ' 参数说明:  
    '''''''''''''''''''''''''''''''''  
    ' lwNum 为 数字数组下限, 如: 1  
    ' upNum 为 数字数组上限, 如: 100  
    '''''''''''''''''''''''''''''''''  
    ' sample call:  
    '''''''''''''''''''''''''''''''''  
    '    dim t  
    '    for each t in fRndNoRpt(1,100)  
    '        response.write t&"<br/>"  
    '    next  
    ''''''''''''''''''''''''''''''''''''''''''''  
        if upNum<1 or isNull(upNum) or upNum="" or isNumeric(upNum)=false then exit function  
        if lwNum<0 or isNumeric(lwNum)=false then exit function  
        dim num, temp  
        dim ar()  
        redim ar(upNum)  
        dim j:j=0  
        for temp=lwNum to upNum  
            num=num&"."&temp&"."  
        next  
        randomize      
        do until num=""  
                temp=int((upNum-lwNum+1)*rnd+lwNum)  
            if inStr(num,"."&temp&".")<>0 then   
                num=replace(num,"."&temp&".","")  
                ar(j)=temp  
                j=j+1  
            end if  
        loop  
        fRndNoRpt=ar  
        erase ar  
    end function 'shawl.qiu code'  
    response.write "<p/>使用随机数函数显示1至100的不重复随机数 1:<br/>-----------------------<br/>"  
    for each temp in fRndNoRpt(1,100)  
        response.write temp&"<br/>"  
    next  
    response.write "<p/>使用随机数函数显示1至100的不重复随机数 2:<br/>-----------------------<br/>"  
    temp=join(fRndNoRpt(1,100),"-")  
    response.write mid(temp,1,len(temp)-1)  
%> 
上一篇:asp动态级联菜单代码
下一篇:方便的大家admin及admin888 经过 md5加密后16位和32位代码
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。