Référence : Langage Arduino : [ Mini | Standard | Etendue | Maxi ] Librairies : [ Vue d'ensemble | Synthèse ] Infos : [ Comparaison | Changements ]
randomSeed(seed)
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
Paramètres
- valeur : nombre transmis à la fonction
Valeur renvoyée
Aucune valeur.
Exemple
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(){
randNumber = random(300); // génération d'un nombre aléatoire
Serial.println(randNumber); // envoie le nombre aléatoire vers le PC par la communication série
delay(50); // pause de 50 ms
}
Commentaires utilisateurs
Aucun commentaire
Voir également
Page d'accueil de la référence Arduino en français
Corrections, suggestions et nouvelle documentation peuvent être postées sur le Forum Arduino ou à l'adresse suivante : support_at_mon-club-elec_point_fr
Le texte original de la référence Arduino est sous licence Creative Commons Attribution-ShareAlike 3.0 . Les exemples de code dans la référence sont dans le domaine public.
La présente traduction française commentée a été réalisée par Xavier HINAULT (2010-2012) (www.mon-club-elec.fr) et est sous licence Creative Commons Attribution-ShareAlike 3.0.