FoLKeN91
Messages postés9Date d'inscriptiondimanche 9 novembre 2003StatutMembreDernière intervention24 janvier 2004
-
24 janv. 2004 à 17:03
ticapix
Messages postés15Date d'inscriptionlundi 23 juillet 2001StatutMembreDernière intervention17 janvier 2006
-
15 mars 2004 à 21:02
Bonjour tout le monde.
Alors voici mon probleme, j'ai beau cherché je n'arrive pas à le résoudre. Je désire faire une fonction qui renvoie un nombre aléatoire (entre 1 et 10 dans le cas présent). Après plusieurs recherches, j'ai pu obtenir quelques résultats avec ce code :
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int Random()
{
int var;
srand(time(NULL));
var = (rand()%10)+1; //Nombre aléatoire entre 1 et 10 inclus
return var;
}
Le principe de cette fonction est d'effectuer un modulo sur un nombre. Ce nombre en question est en fait le nombre de secondes écoulées depuis le 1er janvier 1970 (grâce à la fonction srand). Ca semble sympa, mais si j'execute la fonction plusieurs fois en moins d'une seconde, j'aurais toujours le même nombre.
Quelqu'un est-il capable de m'aider ? Si vous avez une toute autre idée de fonction, je suis preneur :)
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 24 janv. 2004 à 17:22
rand ne peut pas te sortir le meme nombre a chaque fois, meme si tu le fait 10000 fois par seconde, c'est un compteur.
le probleme c'est que tu fait le srand a chaque fois et comme time(NULL) est un nombre en seconde le comteur sera amorcer avec la meme valeur si tu le fais plusieurs fois par secondes
donc ton srand tu le met au debut du prog et ca marchera
a+
cs_Zeroc00l
Messages postés367Date d'inscriptionlundi 1 avril 2002StatutMembreDernière intervention11 février 2010 15 mars 2004 à 19:24
kkun saurait refaire la fonction rand() ?
La fonction random doit bien s'exprimer mathématiquement ?
Merci d'avance si vous trouvez tout et n'importe quoi en rapport avec cette question...
byoushin
Messages postés6Date d'inscriptionsamedi 13 mars 2004StatutMembreDernière intervention16 mars 2004 15 mars 2004 à 20:42
Bonjour,
J'ai le meme probleme que freelooser quand il a posté, mais a l'inverse, je n'ai pas compris la solution de djl, quelqu un pourrait m'expliquer ce que c'est le "met au début du prog" de facon clair ?
Merci beaucoup
Vous n’avez pas trouvé la réponse que vous recherchez ?