참가자 목록 (0명)
참가자를 추가해주세요
무작위 선택 방식
랜덤 선택기는 완전히 공정한 무작위 추첨을 제공하는 도구입니다.
🎯 4가지 선택 모드
• 1명 뽑기: 참가자 중 1명을 무작위로 선정
• 여러명 뽑기: 원하는 인원수만큼 중복 없이 선택
• 팀 나누기: 참가자를 2~6개 팀으로 균등하게 분배
• 숫자 뽑기: 지정한 범위 내에서 랜덤 숫자 생성
✨ 사용 방법
1. 모드를 선택하세요
2. 참가자 이름을 입력하고 Enter (쉼표로 여러명 동시 입력 가능)
3. "샘플 추가" 버튼으로 테스트 데이터 자동 추가
4. 숫자 뽑기 모드에서는 범위와 개수 설정
5. "뽑기!" 버튼을 클릭하면 결과 표시
🎲 숫자 뽑기 프리셋
• 1~10: 간단한 숫자 선택
• 1~100: 일반적인 범위
• 1~45 (로또): 로또 번호 6개 자동 생성
💡 팁
• 추가된 참가자는 X 버튼으로 개별 삭제 가능
• 여러 줄 붙여넣기로 대량 참가자 추가 가능
• 팀 나누기는 자동으로 인원을 균등 분배
랜덤 선택기의 핵심은 공정성과 예측 불가능성입니다.
🔬 완전 무작위 알고리즘
우리의 랜덤 선택기는 Fisher-Yates Shuffle 알고리즘을 사용합니다. 이는 1938년 Ronald Fisher와 Frank Yates가 고안한 방법으로, 모든 순열(permutation)이 동일한 확률로 발생하도록 보장합니다.
알고리즘 동작 원리:
1. 배열의 마지막 요소부터 시작
2. 현재 위치부터 처음까지 중 랜덤 위치 선택
3. 두 요소를 교환
4. 앞으로 이동하며 반복
이 방법은 O(n) 시간 복잡도로 완벽히 균등한 분포를 만들어냅니다. 각 항목이 특정 위치에 올 확률은 정확히 1/n입니다.
🎰 난수 생성의 품질
JavaScript의 Math.random()은 의사 난수 생성기(PRNG)로, 진정한 난수는 아니지만 일반적인 추첨 용도로는 충분히 예측 불가능하고 공정합니다. 암호화 수준의 보안이 필요한 경우 crypto.getRandomValues()를 사용할 수 있습니다.
⚖️ 통계적 검증
수백만 번의 시뮬레이션 결과, Fisher-Yates 알고리즘은 완벽한 균등 분포를 보여줍니다:
• 각 참가자의 당첨 확률: 정확히 1/N
• 특정 순서로 나열될 확률: 1/N!
• 편향(bias) 수치: 0.00%
📊 실제 활용 사례
• 온라인 이벤트 당첨자 선정
• 학교/회사 팀 편성
• 게임 대회 조 추첨
• 연구 실험의 무작위 할당
• 공정한 순서 결정
💡 랜덤 선택기 활용 가이드
🎁 이벤트 당첨자 추첨
• SNS 이벤트의 댓글 참가자 추첨
• 추첨 과정을 영상으로 녹화하여 공정성 증명
• 예비 당첨자도 함께 선정하여 결원 대비
• 중복 참여 방지를 위해 중복 이름 제거
🍕 메뉴 선택
• 점심 메뉴 고민될 때 무작위 선택
• "짜장면, 짬뽕, 탕수육, 볶음밥" 입력 후 뽑기
• 친구들과 의견 충돌 시 공정한 결정
• 새로운 음식 시도할 때 운에 맡기기
👥 팀 편성
• 체육 대회 팀 나누기
• 프로젝트 그룹 구성
• 게임 파티 편성
• 토론 대회 조 편성
🎯 게임 & 놀이
• 술자리 벌칙 순서 정하기
• "진실 혹은 거짓" 질문 대상 선정
• 가위바위보 대신 공정한 선택
• 게임 시작 순서 결정
🎲 숫자 뽑기 활용
• 로또 번호 자동 생성 (1~45, 6개)
• OX 퀴즈 정답 번호 선정
• 랜덤 좌석 배치
• 무작위 샘플링
📚 교육 현장
• 학생 발표 순서 정하기
• 무작위 조별 활동 그룹
• 문제 출제 번호 선정
• 실험 대상자 무작위 할당
🎪 회의 & 업무
• 회의 발표 순서
• 커피 심부름 당번
• 프로젝트 역할 분담
• 스크럼 미팅 발표 순서
⚡ 빠른 팁
• 엑셀/스프레드시트에서 이름 목록 복사 가능
• 줄바꿈이나 쉼표로 구분된 텍스트 일괄 입력
• 여러 번 추첨이 필요하면 매번 새로 뽑기
• 결과는 스크린샷으로 저장하여 증거 보관