RAND( ) Function

Returns a random number between 0 and 1.

RAND([nSeedValue])

Return Values

Numeric

Parameters

  • nSeedValue
    Specifies the seed value that determines the sequence of values RAND( ) returns.

    RAND( ) returns the same sequence of random numbers if you use the same seed value for nSeedValue the first time you issue RAND( ) followed by subsequent RAND( ) function calls without nSeedValue.

    If nSeedValue is negative the first time you issued RAND( ), a seed value from the system clock is used. To achieve the most random sequence of numbers, issue RAND( ) initially with a negative argument and then issue RAND( ) without an argument.

    If you omit nSeedValue, RAND( ) uses a default seed value of 100,001.

Example

The first example below uses RAND( ) to create a table with 10 records containing random values, then uses MIN( ) and MAX( ) to display the maximum and minimum values in the table.

The second example below displays a random number that falls between two values, 1 and 10.

CLOSE DATABASES
CREATE TABLE Random (cValue N(3))
FOR nItem = 1 TO 10  && Append 10 records,
   APPEND BLANK
   REPLACE cValue WITH 1 + 100 * RAND( )  && Insert random values
ENDFOR

CLEAR
LIST  && Display the values
gnMaximum = 1  && Initialize minimum value
gnMinimum = 100  && Initialize maximum value
SCAN 
   gnMinimum = MIN(gnMinimum, cValue)
   gnMaximum = MAX(gnMaximum, cValue)
ENDSCAN
? 'The minimum value is: ', gnMinimum  && Display minimum value
? 'The maximum value is: ', gnMaximum  && Display maximum value

CLEAR
gnLower = 1
gnUpper = 10

? INT((gnUpper - gnLower + 1) * RAND( ) + gnLower)

See Also

EXP( ) | PI( ) | MIN( ) | MAX( )