이 글에서는 ASP에서 반복되지 않는 난수를 생성하는 방법을 주로 소개합니다. 필요한 친구들이 참고할 수 있습니다.
ASP는 난수를 생성합니다.
다음과 같이 코드 코드를 복사합니다.
Randomize '순전히 무작위, 반복 없음
Response.write Int((999999999 * Rnd) + 111111111) '111111111과 999999999 사이의 난수를 생성합니다.
ASP는 난수를 반복하지 않습니다.
방법 1: 테스트됨
이를 사용할 때 문자열을 분할하는 내부 문자에 주의해야 합니다.
다음과 같이 코드 코드를 복사합니다.
<%
'생성된 배열은 반복되지 않는 배열입니다.
함수 GetRnd(lowerNum,upperNum)
희미한 단위, RndNum, Fun_X
단위 = upperNum - lowerNum
Redim MyArray(단위)
Fun_I=0인 경우 단위로
myArray(Fun_I)= lowerNum + Fun_I
다음
Fun_I=0의 경우 반올림(단위)
RndNum = getRndNumber(Fun_I,단위)
Fun_X = myArray(RndNum)
myArray(RndNum)=myArray(Fun_I)
myArray(Fun_I)=Fun_X
다음
GetRnd = 조인(myArray)
기능 종료
함수 getRndNumber(하한, 상한)
무작위화
getRndNumber=Int((상한-하한+1)*Rnd+하한)
기능 종료
응답.쓰기 GetRnd(1,1000)
%>
방법 2:
다음과 같이 코드 코드를 복사합니다.
<%
함수 rndarray(istart,iend,sum)
희미한 arrayid(),i,j,blnre,temp,iloop,eloop
redim 배열 ID(sum-1)
나는=0
아이루프=0
eloop=0
blnre=거짓
무작위화하다
내가 하는 동안 <sum
temp=int(rnd*(iend-istart+1)+start)
i=0이면
배열ID(0)=임시
나=나+1
iloop=iloop+1
또 다른
j=0에서 i-1까지
arrayid(j)=temp이면
blnre=true
iloop=iloop+1
"exit for"라는 문장은 중복 루프를 방지하는 데 매우 중요합니다.
또 다른
iloop=iloop+1
종료하면
다음
blnre=false이면
배열ID(i)=임시
나=나+1
또 다른
blnre=거짓
종료하면
종료하면
고리
rndarray=조인(배열ID)
함수 종료
response.write rndarray(1,5,1) '시작 번호, 끝 번호, 생성되는 개수
%>