무작위 숫자를 반환합니다.
구문
Rnd[(number)]
주석
숫자 인수는 적합한 숫자 표현식일 수 있습니다.
Rnd 함수는 1보다 작지만 0보다 크거나 같은 값을 반환합니다. 숫자 값은 Rnd가 난수를 생성하는 방법을 결정합니다.
표 11-13 Rnd 함수 반환 값
| 숫자가 다음과 같은 경우 | Rnd는 다음을 생성합니다. |
|---|---|
| 0보다 작음 | 매번 동일한 숫자로, 시드와 동일한 숫자를 사용합니다. |
| 0보다 큼 | 시퀀스의 다음 난수입니다. |
| 0과 같음 | 가장 최근에 생성된 숫자입니다. |
| 제공되지 않음 | 시퀀스의 다음 난수입니다. |
주어진 초기 시드에 대해 Rnd 함수를 연속적으로 호출할 때마다 이전 번호를 시퀀스의 다음 번호를 위한 시드로 사용하기 때문에 동일한 번호 시퀀스가 생성됩니다.
Rnd를 호출하기 전에 인수 없이 Randomize 문을 사용하여 시스템 타이머를 기반으로 시드를 사용하여 난수 생성기를 초기화합니다.
지정된 범위에서 임의 정수를 생성하려면 다음 공식을 사용합니다.
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
여기서 상한은 범위에서 가장 높은 숫자이고 하한은 범위에서 가장 낮은 숫자입니다.
주:
난수 시퀀스를 반복하려면 숫자 인수와 함께 임의화를 사용하기 직전에 음수 인수를 사용하여 Rnd를 호출합니다. 숫자에 대해 동일한 값으로 난수화를 사용하면 이전 시퀀스가 반복되지 않습니다.
다음 예에서는 Rnd 함수가 난수를 반환하는 방법을 보여줍니다.
예 1:
Dim randomNumber Randomize ' Initialize random-number generator randomNumber = Rnd 'Output: random number between 0 and 1
예 2:
Dim randomNumber Randomize ' Initialize random-number generator randomNumber = Rnd(-1) ' Use -1 as the seed 'Output: the same random number each time
예 3:
Dim randomNumber Randomize ' Initialize random-number generator randomNumber = Rnd ' Generate the first random number 'Output: the first random number randomNumber = Rnd ' Generate the next random number 'Output: the next random number
예 4:
Dim randomNumber Randomize ' Initialize random-number generator randomNumber = Rnd(0) ' Generate a random number and store it 'Output: the most recently generated random number
예 5:
Dim lowerbound, upperbound, randomNumber lowerbound = 1 upperbound = 10 Randomize ' Initialize random-number generator randomNumber = Int((upperbound - lowerbound + 1) * Rnd + lowerbound) 'Output: a random integer between 1 and 10