Inscription / Connexion Nouveau Sujet
Niveau école ingénieur
Partager :

Langage C : choisir un nombre aléatoire dans un intervalle

Posté par
alexyuc
13-10-14 à 11:45

Bonjour,

Je débute en langage C depuis quelques semaines et on doit faire un programme appelé "le jeu du devin" qui consiste à ce que l'ordinateur choisisse un nombre entre 1 et 999 pour que le joueur le devine. Le joueur (ou utilisateur) donnera des propositions et l'ordinateur lui répondra trop petit, trop grand, ou trouvé !
Mon problème ici est comment faire pour que l'ordinateur "choisisse" une valeur dans mon intervalle [1,999] ?
Je veux par exemple l'appeler "alea" ce qui me permettra par la suite d'écrire
if (proposition>alea) {
   printf("Trop grand!"); etc...

Ma prof m'a demandé d'utiliser la fonction "rand" de "stdlib" qui renvoie un nombre aléatoire compris entre 0 et RAND_MAX inclus.
Mais je ne sais pas encore utiliser cette fonction et je ne vois pas comment faire pour qu'il choisisse un nombre au hasard là dedans, surtout que je ne le veux pas entre 0 et 999 mais bien entre 1 et 999.

Auriez-vous des idées/conseils ?

Merci beaucoup !
Cordialement.

Posté par
Jygz
re : Langage C : choisir un nombre aléatoire dans un intervalle 13-10-14 à 11:52

Ben s'il te renvoie un nombre entre 0 et 999 tu as juste à arrondir ce que tu obtient à l'entier supérieur ... Quant à savoir comment utiliser rand, sur Google il doit y avoir des dizaines de milliards de pages qui l'expliquent ...

Posté par
fred1992
re : Langage C : choisir un nombre aléatoire dans un intervalle 13-10-14 à 11:54

Salut.

J'imagine que RAND_MAX est une valeur que l'on peut choisir. Reste à savoir si la fonction rand renvoie un entier ou un réel.

Ainsi, on a \text{rand}(x) \in [t 0, \text{RANDMAX}].
Si RAND_MAX vaut 998, comment obtenir alors l'intervalle désiré ?

Posté par
fred1992
re : Langage C : choisir un nombre aléatoire dans un intervalle 13-10-14 à 11:55

... \text{rand}(x) \in [0, \text{RANDMAX}].

Posté par
Jygz
re : Langage C : choisir un nombre aléatoire dans un intervalle 13-10-14 à 11:58

Tiens :

Et tiens :

Posté par
Jygz
re : Langage C : choisir un nombre aléatoire dans un intervalle 13-10-14 à 12:09

Autant pour moi, ça renvoie un entier. Reste à savoir si c'est compris entre 0 et 998 avec ces deux nombres inclus ou non.

Posté par
lafol Moderateur
re : Langage C : choisir un nombre aléatoire dans un intervalle 13-10-14 à 12:16

bonjour

Citation :
Ma prof m'a demandé d'utiliser la fonction "rand" de "stdlib" qui renvoie un nombre aléatoire compris entre 0 et RAND_MAX {\red  inclus}.

Posté par
alexyuc
re : Langage C : choisir un nombre aléatoire dans un intervalle 14-10-14 à 14:00

Bonjour à tous,

Merci @Jygz pour les liens
En effet RAND_MAX est inclus.



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1719 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !