Rand()

imanedaoudi Messages postés 82 Date d'inscription vendredi 20 mai 2005 Statut Membre Dernière intervention 24 octobre 2005 - 9 juin 2005 à 19:08
Pamaury Messages postés 341 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 17 juin 2008 - 10 juin 2005 à 07:14
Salut,
je veux générer dim valeurs aléatoire différentes d'une itération à l'autre j'ai utiliser
for (i=0;i<dim;i++)
{
vect[i]=vecteur(a,b,c,d);

}

sachant que
vecteur(float xmi,float xma,float ymi, float yma)
{
srand( (unsigned)time( NULL ) );
id=compt++;
x=xmi+fmod((rand()),(xma-xmi));
y=ymi+fmod((rand()),(yma-ymi));
}
Je récupére tjs les memes valeurs !comment faire alors. Merci

4 réponses

Pamaury Messages postés 341 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 17 juin 2008 3
9 juin 2005 à 19:13
tu as fait un srand(time(NULL)); au départ du prog ??

"Je récupére tjs les memes valeurs !" -> cad ? les même valeur à chaque exécution ou la même valeur à chaque fois ?

A m a u r y
0
imanedaoudi Messages postés 82 Date d'inscription vendredi 20 mai 2005 Statut Membre Dernière intervention 24 octobre 2005
9 juin 2005 à 19:23
je récupére dim valeurs similaires cad pour vecteur(i=0)=vecteur(i=1)..... les valeurs sont identique pour tt i<dim ,pour le srand(time(NULL)), je l'ai mis au debut de la fonction.
0
ctx_man Messages postés 285 Date d'inscription mardi 28 décembre 2004 Statut Membre Dernière intervention 20 janvier 2013 3
9 juin 2005 à 22:55
ta fonction vecteur je renvoi rien, par conséquent vect[i] est egale à un nombre inconnu (généralement null ou 0x7F7F7F7F.... en fonction du nombre de byte de vec[i]).
Evite aussi de mettre ton srand directement dans la fonction vecteur, mais plutot dans ton main, afin qu'il ne soit executer qu'une seule fois, car si tu apelle trop souvent la fonction vecteur le time() n'aura pas le temps de changer et reinitialisera ton srand avec la meme valeur (donc meme suite de nombre qu'a la derniere initilisation)
0
Pamaury Messages postés 341 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 17 juin 2008 3
10 juin 2005 à 07:14
lol bien vu ctx_man .

A m a u r y
0
Rejoignez-nous