sanae19
Messages postés7Date d'inscriptionsamedi 16 décembre 2006StatutMembreDernière intervention10 juin 2007
-
23 mai 2007 à 14:41
thomwebster
Messages postés63Date d'inscriptionmercredi 7 février 2007StatutMembreDernière intervention14 juin 2007
-
24 mai 2007 à 20:46
bonjour
en fait je fai un projet ou j'ai besoin de nombre aléatoire entre 0 et NMAX
je fait:
j=my_rand(NMAX);
printf(" %f", j);
la fonction my_rand:
int my_rand(int N)
{ return (rand() % (N+1));}
et ça m'affiche
1r=0
merci de m'expliker ke dois-je faire pooour recupérer tout simplement un nombre
thomwebster
Messages postés63Date d'inscriptionmercredi 7 février 2007StatutMembreDernière intervention14 juin 2007 24 mai 2007 à 14:52
En toute amitié rtfm ;) :
man srand:
/*
La fonction rand() renvoie un entier pseudo-aléatoire
entre 0 et RAND_MAX.
La fonction srand() utilise son argument comme "graine"
pour la génération d'une nouvelle séquence de nombres
pseudo-aléatoires, qui seront fournis par rand(). Ces
séquences sont reproductibles en appelant srand() avec la
même valeur de graine.
Si aucune graine originale n'est fournie, la fonction
rand() commence en utilisant la valeur 1.
*/
donc d'après le man t'a fonction doit etre:
int my_rand(int NMAX)
{
return (1+(int) (NMAX*rand()/(RAND_MAX+1.0)));
sanae19
Messages postés7Date d'inscriptionsamedi 16 décembre 2006StatutMembreDernière intervention10 juin 2007 24 mai 2007 à 19:27
merci pour vos reponse j'ai essayé tout ce que vous m'avez conseillé
mais ça marche toujours pas je sais vraiment pas pourquoi je vais
continuer les recherche.