当前位置: 首页 > 图文教程 > 网络编程 > ASP > 可用的ASP无重复数字随机函数, 数组实现, 并应用于随机显示记录集

ASP
ASP基础讲座(下)
解决IIS5 HTTP500内部错误
ASP 3.0高级编程(四十六)
ASP 3.0高级编程(四十五)
ASP 3.0高级编程(四十四)
ASP 3.0高级编程(四十三)
ASP 3.0高级编程(四十二)
ASP 3.0高级编程(四十一)
ASP 3.0高级编程(三十九)
ASP 3.0高级编程(三十八)
ASP 3.0高级编程(三十七)
ASP 3.0高级编程(三十六)
ASP 3.0高级编程(三十五)
ASP 3.0高级编程(三十四)
ASP 3.0高级编程(三十三)
ASP 3.0高级编程(三十二)
ASP 3.0高级编程(三十一)
ASP错误代码说明
jscript错误代码及相应解释大全
ASP错误处理

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 119 ::
收藏到网摘: n/a

经软晨学习网站长测试可用的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)
%>