사용법
- 숫자를 뽑을지, 명단에서 사람을 뽑을지 고릅니다.
- 숫자는 최솟값·최댓값을, 명단은 한 줄에 한 명씩 적습니다. 엑셀에서 열을 복사해 붙여 넣어도 됩니다.
- 뽑을 개수와 중복 허용 여부를 정하고 ‘뽑기’를 누릅니다.
무작위로 뽑는 방식
- 모든 난수는 브라우저의 암호학적 난수 생성기
crypto.getRandomValues에서 얻고, 나머지 연산의 편향을 없애기 위해 거절 샘플링을 씁니다. - 명단에서 중복 없이 뽑을 때는 피셔-예이츠(Fisher–Yates) 셔플을 필요한 개수만큼만 진행합니다. 모든 순서의 확률이 같습니다.
- 숫자 범위에서 중복 없이 뽑을 때는 이미 나온 수가 나오면 다시 뽑고, 뽑을 개수가 범위의 절반을 넘으면 범위 전체를 셔플합니다.
이렇게 써 보세요
예시 1. 이벤트 댓글 당첨자 3명
댓글 작성자 아이디를 명단에 붙여 넣고 개수 3, 중복 없음으로 뽑습니다. 뽑힌 순서대로 1·2·3등으로 정할 수 있습니다.
예시 2. 1~30번 중 오늘 발표할 번호 5개
최솟값 1, 최댓값 30, 개수 5, 중복 없음. 결과는 작은 번호부터 정렬되어 나옵니다.
예시 3. 주사위 10번 던지기
최솟값 1, 최댓값 6, 개수 10, 중복 허용. 던진 순서대로 10개의 눈이 나옵니다.
주의할 점
- 한 번에 최대 1,000개까지 뽑고, 숫자 범위는 10억 이하로 제한했습니다.
- 법적 요건이 있는 추첨(공공 추첨, 경품 고시 등)은 정해진 절차를 따르세요. 이 도구는 기록을 서버에 남기지 않습니다.