Willekeurig#
Invoering#
De C+±standaardbibliotheek biedt functies voor het genereren van pseudo-willekeurige getallen. Deze kunnen in VEXcode V5 worden gebruikt voor gedragingen die variabiliteit of toeval vereisen.
Functies#
De <cstdlib> bibliotheek bevat de volgende functies:
rand#
Geeft een willekeurig geheel getal terug tussen 0 en 2.147.483.647.
Available Functionsint rand();
Deze functie accepteert geen parameters.
Return ValuesGeeft een willekeurig geheel getal terug tussen 0 en 32767.
NotesOm een willekeurig geheel getal binnen een exclusieve limiet te retourneren, gebruikt u het patroon
rand() % max.Om een willekeurig geheel getal binnen een specifiek bereik te retourneren, gebruikt u het patroon
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#
Stelt de seed in die gebruikt zal worden door de pseudo-willekeurige getallengenerator in de rand functie.
void srand( unsigned int seed );
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
De startwaarde van het zaad. |
Deze functie retourneert geen waarde.
NotesBel
randslechts één keer, aan het begin van uw project, voordat urandbelt. U hoeft het niet voor elkesrandte bellen.Als
srandnooit wordt aangeroepen, gedraagt het programma zich alsofsrand(1)is gebruikt. Dit betekent datrandelke keer dat het project wordt uitgevoerd dezelfde reeks getallen produceert.Om bij elke uitvoering van het project andere resultaten te krijgen, begin je met een waarde die tussen de uitvoeringen verandert, zoals de Brain’s timer.
Om elke keer dezelfde resultaten te krijgen (handig voor testen), begin je met een vast getal, bijvoorbeeld
srand(1).
// Use the same seed for random number
srand(5);
Brain.Screen.print("%d", rand() % 100);