randomSeed()

Description

L'instruction randomSeed() ("seed" = la graine en anglais) initialise le générateur de nombres pseudo-aléatoire, imposant à la séquence aléatoire de démarrer à un point arbitraire. Cette séquence, bien que très longue, et aléatoire, est toujours la même.

S'il est important que les valeurs d'une séquence générée par l'instruction random diffèrent, lors d'exécutions successives d'un programme, utiliser la fonction randomSeed() pour initialiser le générateur de nombres aléatoires avec une entrée suffisamment aléatoire, telle que la valeur renvoyée par l'instruction analogRead() sur une broche analogique non connectée.

Inversement, il peut être occasionnellement utile d'utiliser des séquences pseudo-aléatoires qui se répètent exactement. Ceci peut être réalisé en appelant l'instruction randomSeed() avec un nombre fixé, avant de démarrer la séquence aléatoire.

Syntaxe

randomSeed(valeur)

Paramètres

  • valeur: nombre transmis à la fonction

Valeurs Renvoyées

  • Aucune valeur.

Exemple

long randNumber; // déclaration variable long void setup(){ Serial.begin(9600); // initialise communication série à 9600 bauds randomSeed(analogRead(0)); // initialise le générateur de nombre aléatoire en lisant broche analogique } void loop(){ // génération d'un nombre aléatoire randNumber = random(300); // envoie le nombre aléatoire vers le PC par la communication série Serial.print("A random number: "); Serial.println(randNumber); delay(1000); }
  • The result on Serial Monitor:
  • COM6
    Send
    A random number: 17 A random number: 87 A random number: 288 A random number: 239 A random number: 67 A random number: 114 A random number: 124 A random number: 294
    Autoscroll Show timestamp
    Clear output
    9600 baud  
    Newline  

Voir Également

ARDUINO BUY RECOMMENDATION

Arduino UNO R3
Arduino Starter Kit
Please note: These are affiliate links. If you buy the components through these links, We may get a commission at no extra cost to you. We appreciate it.

※ OUR MESSAGES

  • We are AVAILABLE for HIRE. See how to hire us to build your project
  • Any suggestion, correction, and translation? please email us at ArduinoGetStarted@gmail.com, We appreciate it
  • We mainly keep improving the references in English. See English version of this page for the latest update.