Petit jeu en c la roulette a vous de jouer

Contenu du snippet

C est un petit jeu fais en c du style de la roulette, l ordinateur choisi un nombre aléatoire entre 0 et 9 puis vous choisiser de misser un somme (au départ vous avez 200.-) puis vous choisiser un nombre et si vous gagné vous gagné la somme que vous avez misser si non vous la perder...

Source / Exemple :


/***************************

        • programmeur :Gabriel K ****
        • date : 10.11.03 ****
                                                        • /
/* Librairies */ #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include <time.h> /* Constantes */ #define MONTANT_BUDGET 200 /* Prototype des fonctions */ int f_saisir_int(void); int f_nb_aleatoire(void); int f_saisir_choix(void); int f_saisir_mise(int); int f_resultat(int, int); void f_affiche_resultat(int, int, int); int f_actu_budget(int, int,int); /* Point d'entrée du programme principal */ void main (t_texte) { /* Déclaration des variables */ int v_nb_choix, v_nb_aleatoire, v_resultat; int v_budget=MONTANT_BUDGET, v_mise; char v_choix; do { clrscr(); // Efface l'écran printf("combient voulez-vous miser [CHF]? "); v_mise=f_saisir_mise(v_budget); printf("sur quel chiffre misez-vous [0 a 9]? "); v_nb_choix = f_saisir_choix(); // Saisir le choix de l'utilisateur /* Tirage aléatoire, retourne un nb entre 0 et 9 */ v_nb_aleatoire = f_nb_aleatoire(); printf("Tirage du nombre : %d\n",v_nb_aleatoire); v_resultat=f_resultat(v_nb_choix, v_nb_aleatoire); f_affiche_resultat(v_nb_choix, v_nb_aleatoire, v_resultat); v_budget=f_actu_budget(v_mise, v_budget, v_resultat); printf("votre nouveau budget est de %d CHF\n", v_budget); if(v_budget>0) { printf("pour continuer preser 'o'"); v_choix=getch(); //met dans v_choix la touche presser } else { if(v_budget==0) { printf("Perdu fin"); v_choix='n'; } else { printf("banque saute"); v_choix='n'; } } } while(v_choix == 'O' || v_choix == 'o'); /*Test condition de sortie*/ } //*********fonction f_saisir_int********* int f_saisir_int() { char t_phrase[80]; long int v_nb; int v_long; int v_i, v_error=0; do { do { if(v_error==1) { textcolor(LIGHTRED); printf("ERREUR\n"); textcolor(LIGHTGRAY); printf("entre un nombre : "); } gets(t_phrase); v_i=0; v_error=0; do { /*Ctrl que chaque caractère soit un chiffre */ if(t_phrase[v_i] < 0x30 || t_phrase[v_i] > 0x39) { v_error=1; } v_i++; } while( t_phrase[i] !='\0'); /* Tant que l'on est pas en bout de chaîne*/ } while(v_error==1); /* Conversion en un nombre entier */ v_nb=atol(t_phrase); } while(v_nb<0); /*Ressaisir en cas de dépassement du max 32bits signé*/ return v_nb; } //*********fonction f_nb_aleatoire********* int f_nb_aleatoire(void) { time_t vtime; /* Structure spécifique pour la librairei time.h*/ time(&vtime); /* init du générateur aléatoire */ srand(vtime); /* l'initialisation est faites en géneral dans le main */ return(rand()%10); } //*********fonction f_saisir_choix********* int f_saisir_choix(void) { int v_nb_choix; do { v_nb_choix=f_saisir_int(); printf("entrer un nombre entre [0 et 9]\nrecommencer :"); } while(v_nb_choix<0 || v_nb_choix>9); return v_nb_choix; } //*********fonction f_saisir_mise********* int f_saisir_mise(v_budget) { int v_mise; v_mise=f_saisir_int(); while(v_mise>v_budget) { printf("pas assez d'argent\nrecommencer :"); v_mise=f_saisir_int(); } return v_mise; } //*********fonction f_resultat********* int f_resultat(v_nb_choix, v_nb_aleatoire) { if(v_nb_choix==v_nb_aleatoire) { return 1; } else { return 0; } } //*********fonction f_affiche_resultat********* void f_affiche_resultat(v_nb_choix, v_nb_aleatoire, v_resultat) { printf("vouz avez miser sur le %d\n", v_nb_choix); printf("le chiffre gagnant était: %d\n", v_nb_aleatoire); if(v_nb_choix==v_nb_aleatoire) { printf("Vous avez gagné!\n"); } else { printf("Vous avez perdu!\n"); } } //*********fonction f_actu_budget********* int f_actu_budget(v_mise, v_budget, v_resultat) { if(v_resultat==1) { v_budget=v_budget+v_mise; } else { v_budget=v_budget-v_mise; } return v_budget; }

Conclusion :


j ai fais plusieur teste et je n'ai trouver aucun bug... je n'ai pas réussi à le faire buger une seul fois... si vous y arriver dit le moi...

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.