comen generer un nb aleatoire en c

comen generer un nb aleatoire en c - Programmation

Marsh Posté le 12-02-2002 à 10:06:10    

slut  
bon voila mon pb il faut que je genere aleatoirement un nombre comprit entre 1 et 4
 
il faut que je fasse cela en c
 
svp. si vous pouvez m'aider ca me rendrait un gros service
 
merci d'avance

Reply

Marsh Posté le 12-02-2002 à 10:06:10   

Reply

Marsh Posté le 12-02-2002 à 10:07:33    

rand() / random()


---------------
Mes News
Reply

Marsh Posté le 12-02-2002 à 10:09:15    

j'ai essayer mais jdoit merde ca me sort tjrs un chiffre enorme et tjr le meme de plus
 
c po la joie

Reply

Marsh Posté le 12-02-2002 à 10:10:21    

Pour des nombres de 1 à 4 (1D4 donc) :
 
int UnDe4 = (rand() % 4) + 1;


---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran
Reply

Marsh Posté le 12-02-2002 à 10:11:46    

merci  :D

Reply

Marsh Posté le 12-02-2002 à 10:12:10    

ben vi apres c est des maths utilise modulo


---------------
Mes News
Reply

Marsh Posté le 12-02-2002 à 10:17:06    

en fait rand me renvoie systematiquement le meme chiffre donc cela me renvoie tjr le meme chiffre compri entre 1 et 4
 
fo pas que je balance un param a rand ? :(

Reply

Marsh Posté le 12-02-2002 à 10:18:51    

je dirais que oui. Faut lui passer le range


---------------
Je ne suis ni pour, ni contre, bien au contraire  
Reply

Marsh Posté le 12-02-2002 à 10:20:24    

c koi le range ?  
 
chui un newbie alor g du mal :(

Reply

Marsh Posté le 12-02-2002 à 10:27:04    

ben la valeur limite quoi,  
 
un truc genre rand(4)


---------------
Je ne suis ni pour, ni contre, bien au contraire  
Reply

Marsh Posté le 12-02-2002 à 10:27:04   

Reply

Marsh Posté le 12-02-2002 à 10:33:35    

en fait j'ai fait ca au debut
 mais il me sort nu truc tjr  
pareil genre 2  
ca me saoule
 
en fait c pour un projet que jdoit rendre ( premiere annee)
jdoit faire un mastermind  
 
svp vous pourriez po m'ecrire le ptit bout de code qui me manque ? :(  
 
merci d'avance

Reply

Marsh Posté le 12-02-2002 à 10:41:32    

si tu développes sous Unix, fais un "man rand" pour voir comment l'utiliser


---------------
Je ne suis ni pour, ni contre, bien au contraire  
Reply

Marsh Posté le 12-02-2002 à 10:42:48    

:(  :( malheuresement c sous le magnifique visual studio
 
et pire j'ai meme po mdsn

Reply

Marsh Posté le 12-02-2002 à 10:44:27    

rand() : Retourne à chaque appel un entier aléatoire compris entre 0  et une  certaine valeur qui dépend du compilateur utilisé.  Alors pour générer une valeur aléatoire entre deux bornes données, il suffit d?appliquer le modulo de la distance entre les 2 bornes sur le résultat obtenu par  rand() et d?additionner à la borne inférieure. Ainsi la valeur aléatoire entre les  bornes  [Inf, Sup] est definit par  l?instruction :
 
rand()%(Sup-Inf+1) +Inf.


---------------
"Si ça peut déconner, ça va déconner..."
Reply

Marsh Posté le 12-02-2002 à 10:48:39    

:(  :( en fait mon pb c'est po la ligne de code
rand()%(Sup-Inf+1) +Inf
 
mais c rand() qui me retourne tjr le meme chiffre et je ne comprend pas pkoi  
j'envoie mon code
 
#include<stdio.h>
#include<stdlib.h>
 
 
void aleat()
{
 
    int UnDe4 = (rand()%4)+1;  
 
 printf("\n%d",UnDe4);
 
 getchar();
 
 
}
 
en fait che po ce qui deconne

Reply

Marsh Posté le 12-02-2002 à 10:51:04    

mais le rand est pas fixer a la compile????

Reply

Marsh Posté le 12-02-2002 à 10:52:44    

kesqui fo que je rajoute?

Reply

Marsh Posté le 12-02-2002 à 10:54:05    

je sais po
je crois pas que tu puisses generer un nb aleatoire avec cette fonction
elle est trop basique
 
je crois qu il faut trouver un lib de math qui genere un vrai nb aleatoire, et pas un nb fixe a la compile

Reply

Marsh Posté le 12-02-2002 à 10:54:08    

http://www.isty-info.uvsq.fr/~rume [...] 4.html#q_8
 
 
Merci google


---------------
Je ne suis ni pour, ni contre, bien au contraire  
Reply

Marsh Posté le 12-02-2002 à 10:55:34    

ha bas je savais bien que la compile y jouait pour qlq chose:D

Reply

Marsh Posté le 12-02-2002 à 10:57:14    

merci a tt le monde pour votre aide
 
jcroi avoir trouver avec le lien
 
merci bcp

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed