Rand() fonction

Résolu
saralamia Messages postés 2 Statut Membre -  
fiddy Messages postés 11653 Statut Contributeur -
bsr ,svp j'ai un pblm et j'aimerai b1 avoir de l'aide
j'essaye de remplir ;aléatoirement en utilisant rand() ; une matrice avec N colonnes et M lignes par des valeurs compris entre (1 - N)
par exemple si N=5 , M =3 , les valeurs seront {1,2,3,4,5}
le pblm c que la fonction rand() fait la répétition des valeurs ,j'ai fait quelque essaies ,mais sans avoir de résultat,avez vous des propositions??
A voir également:

2 réponses

fiddy Messages postés 11653 Statut Contributeur 1 847
 
Bonjour,
Il faut initialiser la graine en la basant sur l'horloge.
Par exemple, tu peux rajouter l'instruction suivante en début de code.
srand(time(NULL));
0
saralamia Messages postés 2 Statut Membre
 
Merci pour la réponse,j'ai essayé,mais il y'a toujours le même problème
0
fiddy Messages postés 11653 Statut Contributeur 1 847
 
Tout dépend de ce que tu entends par "répétition des valeurs" :
Si tu constates qu'à chaque lancement, ce sont les mêmes valeurs qui sont générés, alors oui, il faut mettre srand(time(NULL));
Si tu constates que parfois la fonction rand() renvoie des nombres déjà générés (donc pas d'unicité), c'est normal puisque c'est "aléatoire"... Si tu veux une liste mélangée, il suffit prendre un tableau, l'initialiser avec toutes les valeurs possibles et de le mélanger.
Si ce que tu souhaites ne fait pas partie de ces deux cas, soit plus précis. Si cela ne fonctionne, n'hésite pas à poster ton code pour qu'on puisse mieux t'aider.
Note : pour poster un code, pense à bien utiliser les balises "code c".
Exemple :
<code c>ici tu mets ton code</code>
0
Utilisateur anonyme
 
Bonjour merci de faire un effort de rédaction, le langage sms est interdit sur le forum

--
0