# VBMath.Rnd Method ()

.NET Framework (current version)

Note

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Returns a random number of type Single.

Namespace:   Microsoft.VisualBasic
Assembly:  Microsoft.VisualBasic (in Microsoft.VisualBasic.dll)

## Syntax

```public static float Rnd()
```

#### Return Value

Type: System.Single

The next random number in the sequence.

## 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.

Security Note

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.

## 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))
```

## Version Information

.NET Framework
Available since 1.1
Silverlight
Available since 2.0