fonction srand() - C - Programmation
Marsh Posté le 18-12-2008 à 17:03:08
Il existe plusieurs variantes de srand,() rand() ou random() selon les compilateurs.
Il faut donc se référer à la documentation de son compilateur.
Sauf erreur, si c'est Micro$oft Visual C++, alors on obtient un nombre entre 0 et 1 que l'on multiplie par 8 et que l'on arrondi pour avoir un nombre aléatoire entre 0 et 8. Si c'est BorlandC alors on peut directement avoir un nombre entre 0 et 8.
Marsh Posté le 18-12-2008 à 17:16:51
srand() et rand() de la mscvrt fonctionne comme partout ailleurs. srand() sert à l'initialisation du générateur pseudo-aléatoire et rand() renvoie un nombre aléatoire entre 0 et RAND_MAX.
Marsh Posté le 18-12-2008 à 23:46:23
"man srand", en ligne de commande si tu es sur un Unix quelconque, ou sur Google sinon, ça marche aussi :
Name #include <stdlib.h> Description The srand() function sets its argument as the seed for a new sequence of pseudo-random integers to be returned by rand(). These sequences are repeatable by calling srand() with the same seed value. If no seed value is provided, the rand() function is automatically seeded with a value of 1. |
En gros, srand() ne génère pas de nombre aléatoire (d'ailleurs, le type de retour de la fonction est "void" ). Cette fonction sert à réinitialiser le générateur de nombres pseudo-aléatoires, en s'aidant du nombre que tu lui fournis.
C'est nécessaire parce que... hmm... tiens, une page wikipédia qui expliquera ça mieux que moi : http://fr.wikipedia.org/wiki/G%C3% [...] %A9atoires
Marsh Posté le 18-12-2008 à 16:43:07
Bonjour,
je veux utiliser la fonction srand() mais je ne comprends pas son initialisation.
car je veux faire un srand(8) car je veux qu'il choisisse entre 1 et 8. Que faut-il faire de plus pour que ça marche.
Merci d'avance.
C'est urgent.
Message édité par Elmoricq le 18-12-2008 à 23:45:17