본문 바로가기
TextKit

랜덤 뽑기 · 순서 정하기 (이름 추첨)

목록에서 무작위로 뽑거나 전체 순서를 섞습니다

한 줄에 하나씩 이름·항목을 입력하세요.

참가 0

결과는 브라우저 안에서 암호학적 난수로 정해지며, 새로고침해도 바뀌지 않습니다.

결과

목록을 넣고 버튼을 누르면 결과가 여기에 표시됩니다.

고르기를 남에게 미루지 않고, 공정하게

발표 순서, 청소 당번, 회식 벌칙, 경품 추첨 — “누가 할까”를 정할 때 누군가 고르면 뒷말이 남습니다. 이 도구는 이름·항목 목록을 넣으면 무작위로 뽑거나 전체 순서를 섞어대신 정해 줍니다. 교실·회사·모임 어디서든 “기계가 정했다”는 한마디로 끝납니다.

‘공정한 무작위’는 생각보다 까다롭다

무작위라고 다 같은 무작위가 아닙니다. 이 도구는 두 가지를 지킵니다.

  • 암호학적 난수 — 브라우저의 crypto 난수를 씁니다. 흔한 Math.random보다 치우침이 적고 예측이 어렵습니다.
  • 피셔–예이츠 셔플— 뒤에서부터 각 자리를 무작위 위치와 바꿉니다. 단순히 “정렬을 랜덤으로” 하는 방식과 달리, 모든 순서가 고르게 나오도록 수학적으로 보장된 방법입니다.

결과가 새로고침해도 안 바뀌는 이유

이 도구는 결과를 버튼을 누른 순간에만 정하고 화면에 고정합니다. 새로고침해도, 창 크기를 바꿔도 결과는 그대로입니다. 새 결과가 필요하면 ‘다시 뽑기’를 누르면 됩니다. 화면을 다시 그릴 때마다 몰래 결과가 바뀌면 캡처해 공유하거나 함께 확인할 때 신뢰가 깨지기 때문에, 일부러 이렇게 설계했습니다.

뽑기 vs 순서 정하기

  • 뽑기 — 목록에서 정한 수만큼 당첨자를 고릅니다. 5명 중 2명, 20명 중 1명처럼.
  • 순서 정하기 — 아무도 빼지 않고 전체를 무작위 순서로 나열합니다. 발표·게임 순서에.

이럴 때 씁니다

  • 수업·모임 — 발표 순서, 조 발표자, 청소 당번 정하기.
  • 이벤트 — 댓글 참여자 중 경품 당첨자 추첨(응모권 여러 장은 이름 여러 줄로).
  • 회식·게임 — 벌칙 대상, 순서, 자리 정하기.

정리하면

  • 암호학적 난수 + 피셔–예이츠로 고르게 섞습니다.
  • 결과는 버튼을 누를 때만 바뀝니다. 새로고침에 흔들리지 않습니다.
  • 중복 이름은 확률을 높이는 방법. 명단은 브라우저 밖으로 안 나갑니다.

자주 묻는 질문

무엇을 할 수 있나요?
이름·항목 목록을 넣고 '뽑기'로 무작위 당첨자를 고르거나, '순서 정하기'로 전체를 무작위 순서로 섞습니다. 발표 순서, 청소·회식 당번, 경품 추첨, 벌칙 정하기 등에 씁니다.
정말 공정하게 무작위인가요?
네. 브라우저의 암호학적 난수 생성기(crypto)로 섞습니다. 흔히 쓰는 Math.random보다 치우침이 적고 예측이 어렵습니다. 셔플은 각 자리를 뒤에서부터 무작위로 바꾸는 피셔–예이츠 방식이라 모든 순서가 고르게 나옵니다.
새로고침하면 결과가 바뀌나요?
바뀌지 않습니다. 결과는 '뽑기' 버튼을 누른 순간에만 정해지고 화면에 고정됩니다. 새 결과가 필요하면 '다시 뽑기'를 누르세요. 화면을 다시 그릴 때마다 결과가 바뀌면 캡처·공유할 때 곤란하기 때문에 이렇게 설계했습니다.
'뽑기'와 '순서 정하기'는 뭐가 다른가요?
뽑기는 목록에서 정한 수만큼 당첨자를 고릅니다(예: 5명 중 2명). 순서 정하기는 아무도 빼지 않고 전체를 무작위 순서로 나열합니다(예: 발표 순서). 뽑을 수를 참가 인원보다 크게 잡으면 전원이 뽑힙니다.
같은 이름이 여러 번 있어도 되나요?
됩니다. 동명이인이나 응모권을 여러 장 낸 참가자를 표현하려고 중복 줄을 그대로 둡니다. 한 사람의 당첨 확률을 높이고 싶다면 그 이름을 여러 줄 넣으면 됩니다.
입력한 명단이 서버로 전송되나요?
아닙니다. 명단과 추첨 모두 브라우저 안에서 처리되고, 어디로도 전송·저장되지 않습니다.