Este artículo presenta principalmente el método para generar números aleatorios no repetidos en ASP. Los amigos que lo necesiten pueden consultarlo.
ASP genera números aleatorios:
Copie el código de código de la siguiente manera:
Aleatorizar 'Puramente aleatorio, sin repeticiones
Response.write Int((999999999 * Rnd) + 111111111) 'Genera un número aleatorio entre 111111111 y 999999999
ASP no repite números aleatorios:
Método 1: probado
Al usarlo, debes prestar atención a los caracteres internos que dividen la cadena.
Copie el código de código de la siguiente manera:
<%
'La matriz generada es una matriz no repetitiva
Función GetRnd(Num inferior,Num superior)
Unidad atenuada, RndNum, Fun_X
unidad = númerosuperior - númeroinferior
Redimificar MyArray (unidad)
Por diversión_I=0 A la unidad
myArray(Fun_I)= lowerNum + Fun_I
Próximo
Por diversión_I=0 Para redondear(unidad)
RndNum = getRndNumber(Fun_I,unidad)
Fun_X = miArray(RndNum)
miArray(RndNum)=miArray(Fun_I)
miArray(Diversión_I)=Diversión_X
Próximo
GetRnd = Unirse (mimatriz)
Función final
Función getRndNumber(límite inferior,límite superior)
Aleatorizar
getRndNumber=Int((límite superior-límite inferior+1)*Rnd+límite inferior)
Función final
Respuesta.Escribir GetRnd(1,1000)
%>
Método dos:
Copie el código de código de la siguiente manera:
<%
función rndarray(istart,iend,suma)
dim arrayid(),i,j,blnre,temp,iloop,eloop
redimificar arrayid(suma-1)
yo=0
bucle = 0
bucle = 0
blnre=falso
aleatorizar
hacer mientras yo <suma
temp=int(rnd*(iend-istart+1)+istart)
si i = 0 entonces
IDarray(0)=temperatura
yo=yo+1
iloop=iloop+1
demás
para j=0 a i-1
si arrayid(j)=temp entonces
blnre=verdadero
iloop=iloop+1
La frase "salir por" es muy importante para evitar bucles redundantes.
demás
iloop=iloop+1
terminar si
próximo
si blnre=false entonces
ID de matriz (i) = temperatura
yo=yo+1
demás
blnre=falso
terminar si
terminar si
bucle
rndarray=unirse(arrayid)
función final
Response.write rndarray(1,5,1) 'Número inicial, número final, cuántos se generan
%>