ASP生成随机数:
复制代码 代码如下: Randomize '纯随机,不重复 Response.write Int((999999999 * Rnd) + 111111111) '生成111111111到999999999之间随机数
ASP不重复随机数:
方法一: 已测
使用的时候需要注意里面的分割字符串的字符。 复制代码 代码如下: lt;% '生成的是一个不重复的数组 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) %gt;
方法二:
复制代码 代码如下: lt;% 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 ilt;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 nbsp;if blnre=false then nbsp;arrayid(i)=temp nbsp;i=i+1 nbsp;else nbsp;blnre=false nbsp;end if end if loop rndarray=join(arrayid) end function response.write rndarray(1,5,1) '开始数字,结尾数字,生成多少个 %gt;
(编辑:广州站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|