# VBMath.Rnd Method

## Definition

Important

Some information relates to prerelease product that may be substantially modified before itâ€™s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Returns a random number of type Single.

## Overloads

Rnd() |
Returns a random number of type Single. |

Rnd(Single) |
Returns a random number of type Single. |

## Rnd()

- Source:
- VBMath.vb

- Source:
- VBMath.vb

- Source:
- VBMath.vb

Returns a random number of type Single.

```
public:
static float Rnd();
```

`public static float Rnd ();`

`static member Rnd : unit -> single`

`Public Function Rnd () As Single`

#### Returns

The next random number in the sequence.

### Examples

This example uses the `Rnd`

function to generate a random integer value in the range from 1 to 6.

```
' Initialize the random-number generator.
Randomize()
' Generate random value between 1 and 6.
Dim value As Integer = CInt(Int((6 * Rnd()) + 1))
```

### Remarks

The `Rnd`

function returns a value less than 1, but greater than or equal to zero.

Before calling `Rnd`

, use the `Randomize`

statement without an argument to initialize the random-number generator with a seed based on the system timer.

To produce random integers in a given range, use the following formula.

```
randomValue = CInt(Math.Floor((upperbound - lowerbound + 1) * Rnd())) + lowerbound
```

Here, `upperbound`

is the highest number in the range, and `lowerbound`

is the lowest number in the range.

Note

To repeat sequences of random numbers, call `Rnd`

with a negative argument immediately before using `Randomize`

with a numeric argument.

Important

Because the `Random`

statement and the `Rnd`

function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random`

statement and the `Rnd`

function should not be used to generate random numbers for use in cryptography.

### See also

### Applies to

## Rnd(Single)

- Source:
- VBMath.vb

- Source:
- VBMath.vb

- Source:
- VBMath.vb

Returns a random number of type Single.

```
public:
static float Rnd(float Number);
```

`public static float Rnd (float Number);`

`static member Rnd : single -> single`

`Public Function Rnd (Number As Single) As Single`

#### Parameters

#### Returns

If number is less than zero, Rnd generates the same number every time, using `Number`

as the seed. If number is greater than zero, Rnd generates the next random number in the sequence. If number is equal to zero, Rnd generates the most recently generated number. If number is not supplied, Rnd generates the next random number in the sequence.

### Examples

This example uses the `Rnd`

function to generate a random integer value in the range from 1 to 6.

```
' Initialize the random-number generator.
Randomize()
' Generate random value between 1 and 6.
Dim value As Integer = CInt(Int((6 * Rnd()) + 1))
```

### Remarks

The `Rnd`

function returns a value less than 1, but greater than or equal to zero.

The value of `Number`

determines how `Rnd`

generates a random number.

For any given initial seed, the same number sequence is generated because each successive call to the `Rnd`

function uses the previously generated number as a seed for the next number in the sequence.

Before calling `Rnd`

, use the `Randomize`

statement without an argument to initialize the random-number generator with a seed based on the system timer.

To produce random integers in a given range, use the following formula.

```
randomValue = CInt(Math.Floor((upperbound - lowerbound + 1) * Rnd())) + lowerbound
```

Here, `upperbound`

is the highest number in the range, and `lowerbound`

is the lowest number in the range.

Note

To repeat sequences of random numbers, call `Rnd`

with a negative argument immediately before using `Randomize`

with a numeric argument. Using `Randomize`

with the same value for `Number`

does not repeat the previous sequence.

Important

Because the `Random`

statement and the `Rnd`

function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random`

statement and the `Rnd`

function should not be used to generate random numbers for use in cryptography.

### See also

### Applies to

## Feedback

https://aka.ms/ContentUserFeedback.

Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for