[langage C] simuler un dés 6 faces

Résolu/Fermé
bkrqpzef Messages postés 197 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 13 juillet 2011 - 20 janv. 2006 à 18:43
 MasterOfArmy - 30 déc. 2010 à 11:58
Bonjour,
je débute en c et je m'intéresse à la commande aléatoire, j'aimerai écrire un programme en c simulant un dés de 6 faces. (1,2,3,4,5,6)
je ne trouve rien de simple sur le net ( allez taper "dés" sur google lol ) et je n'ai pas trouvé de tutorial sur la commande rand().
Si vous avez le programme écrit, merci de me le faire parvenir que je puisse l'étudier à des fins plus complexes ( :p ), j'aimerai faire un simulateur du célèbre jeu de loto, pour faire comprendre à un ami que les probabilités de gagner sont très très très minces. Mais je n'en suis pas encore là ...
Merci.
A voir également:

4 réponses

arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
20 janv. 2006 à 20:33
Bonjour

j'ai trouvé ca :

#include <time.h>
#include<stdio.h>

main()
{
int resultat :
srand(time(NULL));
resultat=rand()%6;
printf("résultat de lancement du dé : %d",resultat);
}

tiens je te donne ca aussi , ca m'a permis de te donner ce code

http://www.up.univ-mrs.fr/wcpp/V1/Annexes/A6.pdf
1
bkrqpzef Messages postés 197 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 13 juillet 2011 5
20 janv. 2006 à 21:20
merci, ton programme fonctionne presque:

#include <time.h>
#include<stdio.h>

main()
{
        int resultat;
        srand(time(NULL));
        resultat=rand()%6;
        printf("résultat de lancement du dé : %d",resultat);
}


mais il affiche 0, :p , sur un dés il n'y a pas de zéro :p, tu as une idée ?

les résultats sont un peu bizarre,
0,0,0,0,2,2,2,2,2,4,4,4,4,0,0,0 !!!
c'est un peu bizarre non lol ?
-1
MasterOfArmy
30 déc. 2010 à 11:58
Moi je vous en propose un même si c'est résolue que je trouve plus simple mais a vous de voir.


#include <stdio.h>
#include <stdlib.h>
#include <time.h>


int main ( int argc, char** argv )
{
int nombreMystere = 0;
const int MAX = 6, MIN = 1;
srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
printf (" %d ", nombreMystere);
return 0;
}


Voila faite en bon usage =p.
1
arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
20 janv. 2006 à 21:31
essaie resultat = 1+rand()%6; ca devrait marcher je crois
0
bkrqpzef Messages postés 197 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 13 juillet 2011 5
20 janv. 2006 à 23:00
ha merci c'est parfait, mais je trouve les résultats bizarre ....
test 2 : résultats : 1,1,1,1,1,,5,5,5,5,5,5.
tu trouves pas ça étrange, il n'y a pas une histoire de srand quelque part ?
0
bkrqpzef Messages postés 197 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 13 juillet 2011 5
20 janv. 2006 à 23:02
ha non c'est bon en fait je lance le programme plusieurs fois trop vite !!! lol. merci à tous !!!
0
arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
20 janv. 2006 à 23:38
ah bah si ca marche tant mieux. Jespere que cela aura pu t'aider
0