|
|
|
|
Configuration: Windows XP Firefox 2.0.0.9
voici le cod et l'erreur se trouve dan void expérience(derniere partie) matté pluto
#include<math.h> #include<stdlib.h> #include<stdio.h> #include<conio.h> int n; float p; int numero[100]; float genere[100]; int gain[100]; int cumule[100]; void main() {int i;void aide(void);void jouer(void); entree : clrscr(); printf("\t\t\t JEUX : LES LANCERS DE PIECES\n\t\t ------------------------------\n\n"); printf("___________________________________\n| | |\n"); printf("| 1 | JOUER |\n| | |\n"); printf("-----------------------------------\n| | |\n"); printf("| 2 | AIDE |\n| | |\n"); printf("-----------------------------------\n| | |\n"); printf("| 3 | SORTIR |\n| | |\n"); printf("-----------------------------------\n\n"); do { printf("\t\tENTRER UN CHIFFRE SELON LE TABLEAU PRECEDANT : "); scanf("%d",&i); } while(i!=1&&i!=2&&i!=3); switch(i) { case 1 : jouer(); break; case 2 : aide();printf("\nAppuyer sur n'importe quelle touche pour revenir au menu principal\n"); getch(); goto entree; case 3 : goto sortie; } scanf("%d",&i); sortie : ; } void aide(void) {clrscr(); printf("\t\t\t\tAIDE\n\t\t\t ------\n\n"); printf("Ce programme est un jeu qui consiste a la simulation d'un lancer de piece.\nVous devez entrer la probabilit‚ d'avoir pile et le nombre de lancer a effectuer.\nLorsque vous obtenez pile votre gain augmente de 1DH, dans le cas contraire "); printf("il diminue de 1 DH."); } void jouer(void) {void experience(void); clrscr(); printf("Entrer le nombre de lancers a effectuer\t"); scanf("%d",&n); do { printf("Entrer la probabilit‚ d'obtenir un pile(comprise entre ]0,1[)\t"); scanf("%f",&p); } while((p<=0)||(p>=1)); experience(); } void experience(void) {int i,j; printf("\n\n\t\t\t1er LANCER\n Appuyer sur une touche pour lancer la piece. "); getch();genere[0]=(rand(99)+1)/100; if(genere[0]<p) {gain[0]=-1; printf("\nVous avez obtenu un face. Vous perdez 1DH");} else {gain[0]=1; printf("\nVous avez obtenu pile. Vous gagnez 1DH");} cumule[0]=gain[0]; for(i=1;i<n;i++) { printf("\n\n\t\t\t%dieme LANCER\nAppuyer sur une touche pour lancer la piece. ",i+1); getch();genere[i]=(rand(99)+1)/100; if(genere[i]<p) {gain[i]=-1; printf("\nVous avez obtenu un face. Vous perdez 1DH");} else {gain[i]=1; printf("\nVous avez obtenu pile. Vous gagnez 1DH");} cumule[i]=cumule[i-1]+gain[i]; } printf("\n\n----------------------------------------------------------------------\n"); printf("EXPERIENCES | GAIN | GAIN TOTAL |\n"); for(j=0;j<n;j++) { printf("----------------------------------------------------------------------\n"); printf("EXPERIENCE %d | %d | %d |\n",j+1,gain[j],cumule[j]); } printf("----------------------------------------------------------------------\n"); if (cumule[n-1]<=0) printf("Vous avez perdu %d dirham(s).",cumule[n-1]); else printf("Vous avez gagn‚ %d dirham(s).",cumule[n-1]); } |
c'est pas la bonne syntaxe....
pour generer un nombre entre 0 et 98 srand(time(NULL)); nb=rand()%99; |
thank you very much on essai et on te tien au couran |
commen faire pour generer des nombres entre ]0,1[? |
|
tu declares une variable d'abord en float
float nb; ensuite nb=(float) rand() /RAND_MAX; |
ça marche san faute.mai pour le doublon c'etai pour jouer la carte de la précision (rires)merci |
ok pas de souci
mets ton post en resolu si tu n'as plus de probleme ;) |
Résultats pour nombre aléatoires en c
Résultats pour nombre aléatoires en c
Résultats pour nombre aléatoires en c
Résultats pour nombre aléatoires en c