Random#
Introduction#
The C++ Standard Library provides functions to generate pseudo-random numbers. These can be used in VEXcode IQ for behaviors that require variability or chance.
Functions#
The <cstdlib> library includes the following functions:
rand#
Returns a random integer between 0 and 2,147,483,647.
Available Functionsint rand();
This function does not accept any parameters.
Return ValuesReturns a random integer between 0 and 32767.
NotesTo return a random integer within an exclusive limit, use the pattern
rand() % max.To return a random integer within a specific range, use the pattern
rand() % (max - min + 1) + min.
// Display a random number
Brain.Screen.print("%d", rand());
// Display a random number between 0 and 100
Brain.Screen.print("%d", rand() % 101);
// Display a random number between 5 and 10
Brain.Screen.print("%d", rand() % (10 - 5 + 1) + 5);
srand#
Sets the seed to be used by the pseudo-random number generator in the rand function.
void srand( unsigned int seed );
Parameter |
Type |
Description |
|---|---|---|
|
|
The starting seed value. |
This function does not return a value.
NotesCall
srandonly once, near the start of your project, before callingrand. You do not need to call it before everyrand.If
srandis never called, the program behaves as ifsrand(1)was used. This meansrandproduces the same sequence of numbers every time the project runs.To get different results each time the project runs, seed with a value that changes between runs, such as the Brain’s timer.
To get the same results every time (useful for testing), seed with a fixed number such as
srand(1).
// Use the same seed for random number
srand(5);
Brain.Screen.print("%d", rand() % 100);