yoursyun

뺑뺑이 뽑기 (ASP) 본문

program/asp

뺑뺑이 뽑기 (ASP)

yoursyun 2009. 1. 12. 18:18
Const RNDUSERCNT = 150 '몇명을 뽑을 것 인가.

dim cnt: cnt = 0 ' 뽑힌 인원 수
dim dataCnt: dataCnt = 0
dim setUserIdx: setUserIdx = 0
dim strSQL: strSQL = "적당한쿼리로기준열1개의레코드셋을리턴"

set objQuery = new clsQuery
arrList = objQuery.getRs(strSQL, null, null)
set objQuery = nothing

dataCnt = ubound(arrList, 2)

set dicUser = CreateObject("Scripting.Dictionary") ' 대상자
set Winner  = CreateObject("Scripting.Dictionary") ' 뽑힌인원

for i = 0 to dataCnt 
  dicUser.add i, arrList(0, i)
next

' -----------------------------------
do while (cnt <> RNDUSERCNT)
  Randomize
  setUserIdx = int((dataCnt * rnd) + 1) ' 대상 인덱스에서 뽑힌 인원 인덱스 

  if not Winner.Exists(setUserIdx) then
    cnt = cnt + 1
    Winner.add setUserIdx, dicUser.item(setUserIdx)
  end if
loop

' -----------------------------------
for each fn in Winner
    result = result & Winner.item(fn) & "<br />"
next

response.Write(Winner.Count & "명 <br />")
response.Write(result)

set dicUser = nothing
set Winner = nothing
반응형