stdlib + rand() - Max Value Changed ...

stdlib + rand() - Max Value Changed ... - C++ - Programmation

Marsh Posté le 03-12-2009 à 11:43:55    

Bonjour,
 
J~ai un petit probleme avec la function rand depuis peu.
Precedement tout fonctionnait bien et j`avais les valeurs attendu mais depuis hier Rand a change sa valeur maximal ...
 
Voici le code :
 

Code :
  1. cout << static_cast<double>(rand())/ static_cast<double>(RAND_MAX) << endl;


 
Precedemment je retrouvais bien une valeur comprise entre 0.0 et 1.0.
 
Mais depuis je me retrouve avec des valeurs enormes :
578843.3 -- 549866.5 etc .....
 
Quelqu`un aurait il une idee d`ou pourrait venir mon probleme ?
Je vous remercie ^^.


---------------
“L'éducation est l'arme la plus puissante que l'on puisse utiliser pour changer le monde”
Reply

Marsh Posté le 03-12-2009 à 11:43:55   

Reply

Marsh Posté le 03-12-2009 à 13:07:18    

C'est que t'as plusieurs couillons qui définissent leurs propres RAND_MAX ... si tu n'inclus que cstdlib, t'es pas bon ?

Reply

Marsh Posté le 04-12-2009 à 10:14:06    

Je n`ai qu`une seule occurence de declaration de RAND_MAX...
 

Code :
  1. /*
  2. * RAND_MAX is the maximum value that may be returned by rand.
  3. * The minimum is zero.
  4. */
  5. #define RAND_MAX 0x7FFF


 
... Tres bizarre... Si par hasard quelqu`un aurait changer cette valeur .. rand() utilise t-il cette valeur ? [ce qui n`aurait pas de sens et donc l`erreur viendrait d`ailleurs] ou y aurait il moyen de retrouver la valeur max de ma fonction rand ?
 
Merci.


---------------
“L'éducation est l'arme la plus puissante que l'on puisse utiliser pour changer le monde”
Reply

Marsh Posté le 08-12-2009 à 10:33:44    

Je ne sais pas si cela peut t'aider mais la valeur de RAND_MAX dépend de la version de la library que tu utilises il me semble.

Reply

Marsh Posté le 08-12-2009 à 10:51:05    

:jap:  
Apres un redemarrage du PC, tout est redevenu a la normal....  :whistle:


---------------
“L'éducation est l'arme la plus puissante que l'on puisse utiliser pour changer le monde”
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed