중복 없는 랜덤 숫자 뽑기: 범위 설정부터 추첨까지
2026년 7월 17일 · iGotRandom
같은 번호가 두 번 나오면 곤란한 추첨이 있다. 발표 순서표의 번호를 고르거나, 좌석 번호를 배정하거나, 여러 당첨 번호를 뽑을 때다. 이럴 때는 일반 난수보다 중복 없는 랜덤 숫자 뽑기가 알맞다.
랜덤 숫자 생성기에서 범위와 개수를 입력하고
중복 없이를 선택하면 바로 추첨할 수 있다. 아래에서는 설정 전에 확인할 계산과
공정한 운영 규칙까지 함께 설명한다.
핵심 요약
- 중복 없는 추첨은 뽑힌 숫자를 후보에서 빼는 비복원 추출이다.
- 뽑을 수 있는 최대 개수는
최댓값 - 최솟값 + 1이다. - 후보가 1부터 30이고 6개를 뽑는다면 범위는 30, 개수는 6으로 설정한다.
- 정렬은 결과를 보기 쉽게 바꿀 뿐, 어떤 숫자가 뽑힐 확률은 바꾸지 않는다.
- 제외할 번호와 재추첨 조건은 첫 추첨 전에 정해야 결과를 신뢰하기 쉽다.
중복 없는 랜덤 숫자 뽑기란?
중복 없는 랜덤 숫자 뽑기는 한 번 선택된 숫자를 같은 결과 묶음에서 다시
선택하지 않는 방식이다. 1부터 10까지에서 세 개를 뽑아 2, 7, 9가 나왔다면
2, 7, 9는 각각 한 번만 나타난다.
반대로 중복 허용은 숫자를 뽑은 뒤 후보에 돌려놓는 복원 추출이다. 주사위를 여러 번 굴릴 때 같은 눈이 반복될 수 있는 것과 같다. 어느 방식이 더 공정한지가 아니라, 사용 목적에 맞는 방식이 무엇인지가 중요하다.
몇 개까지 중복 없이 뽑을 수 있을까?
가능한 숫자의 개수보다 많이 뽑을 수는 없다. 범위 크기는 최댓값에서 최솟값을 뺀 뒤 1을 더해 계산한다. 양쪽 끝 숫자를 모두 후보에 포함하기 때문이다.
범위 크기 = 최댓값 - 최솟값 + 1
사이트에서 중복 없이 뽑을 수 있는 최대 개수는 min(N, 100)이다. 범위에
100개보다 많은 숫자가 있어도 한 결과 묶음에서는 최대 100개까지 만들 수 있다.
예를 들어 5부터 12까지에는 5, 6, 7, 8, 9, 10, 11, 12의 여덟 개 숫자가 있다. 따라서 중복 없이 뽑을 수 있는 최대 개수도 8개다. 0부터 9까지 역시 열 개다. 0을 빼먹고 아홉 개라고 계산하기 쉬우니 주의하자.
요청한 개수가 범위보다 크면 추첨은 불가능하다. 이때 범위를 넓히거나, 뽑을 개수를 줄이거나, 중복을 허용해야 한다.
랜덤 숫자를 중복 없이 뽑는 방법
설정은 네 단계면 끝난다. 추첨 전에 참가자나 번호표의 실제 범위부터 확인하자.
- 랜덤 숫자 생성기를 연다.
최솟값과최댓값에 후보 번호의 양 끝을 입력한다.- 필요한 결과 수를
개수에 입력하고중복 없이를 선택한다. - 결과를 작은 숫자부터 확인하려면
숫자 정렬도 선택한 뒤난수 생성을 누른다.
가령 30명 중 발표자 5명을 번호로 뽑는다면 최솟값 1, 최댓값 30, 개수 5로
설정한다. 중복 없이를 켜면 한 사람이 같은 추첨에서 두 번 선택되지 않는다.
정렬 옵션은 확률을 바꿀까?
정렬은 이미 뽑힌 결과의 표시 순서만 바꾼다. 18, 3, 11을 3, 11, 18로
보여줄 뿐, 추첨 후보나 선택 확률은 그대로다. 당첨 번호를 공지하거나 결과를
대조할 때는 정렬이 편하고, 발표 순서처럼 뽑힌 순서 자체가 의미 있을 때는 정렬을
끄는 편이 낫다.
언제 중복을 허용해야 할까?
각 시행이 서로 독립이어야 한다면 중복을 허용한다. 매번 모든 숫자에 다시 기회를 주어야 하는 상황이다.
- 1부터 6까지 숫자로 주사위 결과를 여러 번 대신할 때
- 같은 번호가 여러 라운드에서 다시 선택될 수 있을 때
- 매 추첨을 별도 이벤트로 보고 전체 후보를 초기화할 때
한 결과 묶음 안에서는 중복을 막되, 다음 라운드에서 전체 후보를 다시 쓰고 싶다면 라운드마다 새로 생성하면 된다. 반대로 한 학기 동안 한 번 뽑힌 사람을 계속 제외하려면 숫자만으로 기억하기보다 명단을 관리하는 제비뽑기가 더 적합하다.
공정한 추첨을 위해 먼저 정할 규칙
안전한 난수만으로 추첨 전체가 자동으로 공정해지지는 않는다. 후보 범위와 운영 규칙이 모든 참여자에게 같아야 한다.
제외 번호를 먼저 공개하기
결번, 빈 좌석, 참여하지 않는 사람의 번호는 생성 전에 제외해야 한다. 범위 중간에 제외 번호가 많다면 숫자를 뽑은 뒤 임의로 무효 처리하기보다, 실제 후보를 목록으로 만들어 리스트 섞기를 사용하는 편이 명확하다.
재추첨 조건을 미리 합의하기
원하는 결과가 나올 때까지 다시 뽑으면 무작위 추첨을 한 의미가 약해진다. 입력 실수, 결번 선택처럼 재추첨이 필요한 조건과 처리 방법을 첫 추첨 전에 정하자. 화면을 함께 보거나 설정을 공유하면 같은 규칙을 확인하기 쉽다.
번호와 사람의 연결을 고정하기
참가자 번호표를 추첨 후에 바꾸면 숫자는 공정하게 생성됐어도 배정은 공정하지 않다. 번호 명단을 먼저 확정하고, 추첨이 끝날 때까지 그대로 유지한다.
생성된 숫자는 어떻게 정해질까?
iGotRandom은 브라우저의 crypto.getRandomValues를 사용한다. 중복 없는 모드에서는
가상 부분 Fisher–Yates가 요청한 개수에 필요한 위치만 기록한다. 범위 전체를 메모리에 만들거나 섞지 않는다.
그래도 같은 범위 안의 각 숫자는 동등한 선택 기회를 갖는다.
입력과 결과는 브라우저에서 처리된다. 별도 회원가입 없이 필요한 범위와 개수를 정해 즉시 사용할 수 있다.
상황별 설정 예시
| 상황 | 최솟값 | 최댓값 | 개수 | 중복 없이 | 정렬 |
|---|---|---|---|---|---|
| 30명 중 발표자 5명 | 1 | 30 | 5 | 켬 | 끔 |
| 1~45에서 번호 6개 | 1 | 45 | 6 | 켬 | 켬 |
| 좌석 20개 배정 순서 | 1 | 20 | 20 | 켬 | 끔 |
| 주사위 10회 대체 | 1 | 6 | 10 | 끔 | 끔 |
마지막 예시처럼 결과 개수가 범위보다 많아도 중복을 허용하면 생성할 수 있다. 1부터 6까지를 열 번 독립적으로 뽑기 때문에 같은 숫자가 반복될 수 있다.
바로 숫자 뽑기
중복 없는 추첨의 핵심은 간단하다. 범위 크기 안에서 필요한 개수를 정하고, 추첨 전에 제외·재추첨 규칙을 확정한다. 그다음 결과가 순서인지 단순 번호 목록인지에 따라 정렬 옵션을 고르면 된다. 개수는 범위 크기와 100 중 작은 값까지다.
랜덤 숫자 생성기 열기에서 범위와 개수를 입력하고
중복 없이를 선택해 보자. 이름이나 항목을 직접 뽑아야 한다면
제비뽑기를 쓰면 번호표를 따로 만들 필요가 없다.