■ 목차
1. 함수 설명
2. Rand 함수의 구문 / 사용방법
3. Randbetween 함수의 구문 / 사용방법
4. Rand, Randbetween 함수의 차이 등
5. 난수 값 고정하기
6. 완전한 (중복 없고 빠짐없는) 난수를 만드는 원리
** 핵심 요약
1. 함수 설명
- 엑셀에서 임의의 수 (= 난수, 랜덤 수)를 만들어 주는 함수로 Rand, Randbetween 함수가 있습니다.
- 둘다 난수를 만들어 주지만 오래전부터 사용하던 Rand 함수는 0 ~ 1사이의 "실수"를 Randbetwen 함수는 범위 지정이 가능하며 지정된 최소, 최대 값 사이에서 "정수"를 만들어 줍니다.
- 무작위로 추첨하여 뭔가를 정할 때 사용하거나 임의의 데이터로 샘플 자료를 만들 때 사용 합니다.
- 오늘은 간단한 사용법과 두 함수의 차이 그리고 엑셀에서 난수 생성의 오랜 숙제인 중복 없이 완전한 난수를 만드는 원리에 대해서 간단하게 얘기를 드리겠습니다.
2. Rand 함수의 구문 / 사용방법
- RAND()
- Rand 함수는 입력해줘야 하는 인수가 없습니다. "=rand()"와 같이 입력을 합니다.
- a와 b사이의 난수를 만드는 공식은 "=rand()*(b-a)+a"로 만들수가 있습니다. 역시 실수가 됩니다.
- Rand 함수는 0과 1사이의 "실수"이고 소수점 약 16째 자리까지 사용을 하기 때문에 중복이 없는 난수로 보시면 됩니다.
3. Randbetween 함수의 구문 / 사용방법
- RANDBETWEEN(bottom, top)
- bottom 필수 요소입니다. RANDBETWEEN 함수에서 반환할 수 있는 가장 작은 정수입니다.
- top 필수 요소입니다. RANDBETWEEN 함수에서 반환할 수 있는 가장 큰 정수입니다.
- Randbetween 함수는 난수를 만드는데 "정수"가 반환됩니다.
- 그리고 bottom, top을 지정하여 최솟값과 최댓값의 범위를 지정할 수 있습니다.
- 대신에 난수가 중복해서 발생이 됩니다.
- 정수이기 때문에 음의 정수(-1, -10, …)도 사용이 가능합니다.
4. Rand, Randbetween 함수의 차이 등
- Rand 함수와 Randbetween 함수는 둘 다 난수를 만들어 주지만 아래와 같은 차이가 있습니다.
- 일반적인 난수를 만드는 경우 범위 지정이 가능고 정수를 얻을 수 있는 Randbetween 함수를 많이 사용을 합니다.
- Randbetween 함수가 없었을 때는 이거를 Rand 함수로 조금 어렵게 만들어 사용하곤 했습니다.
- 그리고 난수발생은 워크시트를 계산할 때마다 새로운 난수를 만들어 줍니다.
- 강제로 재계산을 원하는 경우 "지금 계산"(재계산) 단축키인 "F9"키를 눌러 주시면 됩니다.
5. 난수 값 고정하기
- 난수는 워크시트 계산할 때마다 새로운 난수를 만들기 때문에 특정 값으로 고정을 하고자 한다면
- "복사/값 붙여넣기"를 해주셔야 합니다.
- 엑셀 옵션에서 "계산 옵션"을 수동으로 할 수도 있지만 단지 난수의 고정 때문에 사용하지는 않습니다.
6. 완전한 (중복 없고 빠짐없는) 난수를 만드는 원리
- 5명을 순서대로 추첨해서 모두 선물을 주고자 합니다.
- 이렇게 1 ~ 5까지 모든 수가 중복 없이 그리고 빠짐없이 랜덤 하게 나오게 하는 것이 "완전한 난수"를 만드는 것입니다.
- 현재 엑셀의 함수 기능만으로는 한계가 있기 때문에 조금 복잡하게 구해줘야 합니다.
- Rand 함수는 중복은 되지 않지만 정수가 아니고
- Randbetween 함수는 1~5의 범위를 지정해 줄 수 있지만 중복이 됩니다.
- 이 경우에는 중복이 없는 Rand 함수를 기준값으로 사용해 줍니다.
- Rand 함수는 소수 약 16째 자리까지 사용을 하기 때문에 우리가 사용을 하는 숫자의 범위에서는 중복이 없습니다.
- 그리고 Rank 함수를 사용해서 5개의 Rand 함수를 순서대로 순위를 매기고 그 순위가 "완전한 난수"가 됩니다.
- 배열 함수 등을 사용해서 복잡하게 하나의 수식으로 만드는 방법도 있지만 원하는 결과만을 얻는다면 간단하게 몇 줄 입력하는 방식이 더 효율적일 수 있습니다.
- 또한 특정 범위의 완전한 난수가 필요하다면 일단 동일한 개수만큼 완전한 난수를 만들어 차이나는 수만큼 순위 값에 더해 주시면 됩니다.
- 아래 예제를 참조하시기 바랍니다.
- 동일한 방법으로 64개의 난수와 Rank 함수로 순위를 매기면 처음 6개를 로또번호로 사용하는 것이 가능합니다. ^^
** 핵심 요약 : Rand, Randbetween 함수 사용법 - 난수(임의의 수)를 만들어 보자
1. 함수 설명
- 엑셀에서 임의의 수 (= 난수, 랜덤 수)를 만들어 주는 함수로 Rand, Randbetween 함수가 있다.
- Rand 함수는 0 ~ 1사이의 실수를 Randbetwen 함수는 지정된 최소, 최대 값 사이에서 정수를 만들어 준다.
2. Rand 함수의 구문 / 사용방법
- RAND()
- Rand 함수는 인수가 없다. "=rand()"와 같이 사용한다.
- Rand 함수는 0과 1사이의 "실수"이고 소수점 약 16째 자리까지 사용을 하기 때문에 중복이 없는 난수로 볼 수 있다.
- a와 b사이의 난수를 만드는 공식은 "=rand()*(b-a)+a"이고 실수가 된다.
3. Randbetween 함수의 구문 / 사용방법
- RANDBETWEEN(bottom, top)
- bottom 필수 요소입니다. RANDBETWEEN 함수에서 반환할 수 있는 가장 작은 정수입니다.
- top 필수 요소입니다. RANDBETWEEN 함수에서 반환할 수 있는 가장 큰 정수입니다.
- bottom, top의 최소값, 최댓값을 정수로 지정하고 정수 형태의 난수를 만들며 중복이 될 수 있다.
4. Rand, Randbetween 함수의 차이 등
- Rand 함수 : 0 ~ 1사이의 실수로 중복이 없다.
- Randbetween 함수 : 지정된 범위의 정수가 중복해서 발생될 수 있다.
- 워크시트가 계산될 때마다 새로운 난수를 만들며 수동으로 다시 계산(재계산)을 원하면 "F9"키를 눌러준다.
5. 난수 값 고정하기
- 복사/값 붙여넣기로 난수값을 고정할 수 있다.
6. 완전한 (중복없고 빠짐없는) 난수를 만드는 원리
- 원하는 개수만큼의 Rand 함수로 만들어진 중복 없는 난수에 대해서 Rank 함수로 순위를 매기면 완전한 난수를 만들 수 있다.
[엑셀 기초 강좌] - 999. 엑셀 기초 함수 목차 (완료)
* 엑셀 관련 궁금하신 거나 어려운 점이 있으시면 자유롭게 질문을 해주세요.
* 가능한 도움을 드릴 수 있도록 하겠습니다.
* 저도 많이 알지는 못하지만 누구나 그렇듯 시작이란 게 있고 경험이란 게 다를 것 같습니다.
* 편하게 문의하시면 됩니다. 저도 모를 수 있다. 감안해 주시고.
- ILU, SH -
댓글